help with a quote

It is the technology that we do not control the one that is used to control us.
Emiliano Kargieman, space hacker (1975)

To my parochial English ears this quote isn't quite making sense.  I know what it means ....but the up words mixed seem. :-D Wanted to check am I the only one stubbing my linguistic toe on this?

i think you corrected it okay. the original is in spanish.

Yea I think I see where you are coming from @SFSandra. Earlier I created PR #76 regarding that quote, just a small tweak. I think it just sounds funny because the original is in spanish.


unsets flagged params if admin

What's this PR do?
Allows admin API users to see all reportbacks on index endpoint by unsetting flagged param. Users then hit /api/v1/reportbacks?status=pending,flagged,excluded,approved,promoted to view all.
How should this be manually tested?
Use above endpoint to make sure all reportbacks are returned.
What are the relevant tickets?
Fixes #6176

:+1:


Trying to resolve module in object literal

Bug Report
- [x] bug report -> please search issues before submitting
- [ ] feature request

Versions.
OS-  Windows 10
IDE- Visual Studio 2015
node --version =   v 7.7.4
Package manager- npm
npm--version =   v 4.1.2
ng --version =
@angular/cli: 1.0.1
node: 7.7.4
os: win32 x64
@angular/animations: 4.1.3
@angular/common: 4.1.3
@angular/compiler: 4.1.3
@angular/core: 4.1.3
@angular/forms: 4.1.3
@angular/http: 4.1.3
@angular/platform-browser: 4.1.3
@angular/platform-browser-dynamic: 4.1.3
@angular/router: 4.1.3
@angular/cli: 1.0.1
@angular/compiler-cli: 4.1.3

Repro steps.

Create a new app using angular cli.
Add the following code to app.component.ts.

let data: any = {
      templateUrl: ''
    }

Run ng serve

You will get the following error.
The log given by the failure.
ERROR in ./src/app/app.component.ts
Module not found: Error: Can't resolve './' in 'D:\DemoProjects\demo-app\src\app'
 @ ./src/app/app.component.ts 24:22-35
 @ ./src/app/app.module.ts
 @ ./src/main.ts
 @ multi webpack-dev-server/client?http://localhost:4200 ./src/main.ts

Desired functionality.
It should be normal string value.
Mention any other details that might be useful.
Unable to reproduce the same issue in plunker as there we have systemjs config.

Currently, if either templateUrl or styleUrls is used as describe, you will receive the error indicated.  There is ongoing work to fix this.  However, for now, the only option is to not use those exact names in the manner described.


Object must implement IConvertible exception (postgres v9+)

The model contains only bool, DateTime , int and string. The same code works when I use Sql Server but throws this exception on Postgres.
using (var uow = new DbUnitOfWorkProvider().GetUnitOfWork(AppDbConnection.Connection))
{
var locker = uow.Select(8325);
}
DAL method:
public T Select(object id)
{
var primarykey = _database.PocoDataFactory.TableInfoForType(typeof(T)).PrimaryKey;
var t = _database.Query($"WHERE {primarykey} = @0", id).FirstOrDefault();
return t;
}
The table in the database is using character varying (string), timestamp with timezone (datetime) and integer (int).
Any thoughts? Is there something else I should be doing with Postgres??

Incorrect variable in model. Please disregard.


Adding the Smooth Sort Algorithm

Smooth Sort is an adaptive sorting algorithm that is an improved version of Heap Sort. It was designed to take advantage of patterns in the input data and provide better performance in some cases. Like Heap Sort, Smooth Sort is based on binary heaps but uses a more sophisticated approach to maintain the heap property and achieve better time complexity.
Algorithm Steps:
1,Build the initial binary heap (max-heap) from the input array using sift-up operations (comparing the element with its parent and swapping if necessary).
2,Start with the root (maximum element) of the heap.
3,Swap the root with the last element of the heap (rightmost element in the array).
4,Remove the last element from the heap and consider the remaining elements as the heap.
5,Restore the heap property by performing sift-down operations (comparing the element with its children and swapping if necessary) on the new root (former last element) until the heap property is satisfied again.
6,Repeat steps 2-5 until the heap is empty (all elements have been extracted).
7,The elements extracted in step 2 are in reverse sorted order, forming the sorted output.
Smooth Sort differs from traditional Heap Sort in how it constructs and maintains the heap. It uses a variant of Leonardo Heap, which is a combination of heaps and balanced binary trees. This helps to reduce the number of comparisons and swaps, leading to improved performance.
The time complexity of Smooth Sort is O(n log n) in the worst-case scenario and O(n) in the best-case scenario for almost sorted arrays. It is also an adaptive sorting algorithm, meaning its performance improves when the input data is partially sorted or nearly sorted.
@Kumar-laxmi can you assign it to me for the contribution

Assigned!
@Aarsh30 : C, C++, Python and Java


[wip] Taxonomy

cc: @Wikunia this is based on your PR #458 ; I've tested it briefly and it seems ok but I need to write fuller tests for it.
In the mean time please have  a  look and let me know  what you think! and thanks again for looking into this :) taxonomy and chronological pagination are the two big missing features remaining before we can start copying everyone's themes

[x] basic functionality ok
[x] tests

[x] adding, removing tags
[x] tag page generation and deletion
[x] dict inversion

[x] make tag line customisable (hfun)

[x] test

Note @Wikunia, btw I think you were completely right to build the page with head and foot, it's of course much simpler, and someone could just do  {{ispage /tag/*}} ... {{end}} to toggle a specific layout for those pages :) :+1:

Ok this is now in 0.7.6, un-announced officially because I'd like to battletest it a bit more (I'll add a theme/template which uses it soon). Help to report any problems in the mean time would be very welcome here!
API

add tags to a page with @def tags = ["aa", "bb"]
this will generate pages at /tag/aa/ and /tag/bb/ with the list of pages with the same tags
the way the list of results is shown is controlled by the html function hfun_list which

finds the pages with a given tag
sorts them by date, and if date not given by creation date
puts the results in a simple list

Users can easily overwrite this behaviour, they would need to implement something like this in their utils.jl, modifying the core of the logic however they want.
For instance users could define a variable short_description for all these pages and display  those in some order instead of a list.
function hfun_list(params)
    tag = params[1]
    TAG_PAGES = globvar("fd_tag_pages")
    c = IOBuffer()
    # -------------------------------------------
    # add your logic here
    write(c, "
Tag: $tag
")
    write(c, "
")
    rpaths = TAG_PAGES[tag]
    sorter(p) = begin
        pvd = pagevar(p, "date")
        if isnothing(pvd)
            return Date(Dates.unix2datetime(stat(p * ".md").ctime))
        end
        return pvd
    end
    sort!(rpaths, by=sorter, rev=true)
    for rpath in rpaths
        title = pagevar(rpath, "title")
        if isnothing(title)
            title = "/$rpath/"
        end
        write(c, "
$title
")
    end
    write(c, "
")
    # -------------------------------------------
    return String(take!(c))
end


How to transfer lz4 compressed data over network

I am trying to transfer lz4 compressed data from NodeJS to browser. NodeJS will compress the data and browser decompress the data. However, decompressing data failed. Can anyone help to solve the problem?
From NodeJS side:
var rawbuffer = new Buffer(rawstring);
var originlength = rawbuffer.length;
var output = lz4.encode(rawbuffer);
var outputstr = output.toString();
res.setHeader("Original-Length", originlength);
res.send(outputstr);

From Browser side:
var targetLength = xhr.getResponseHeader('Original-Length');
var originBuffer = new Buffer(xhr.responseText);
var uncompressedBuffer = new Buffer(parseInt(targetLength));
var uncompressedSize = LZ4.decodeBlock(originBuffer, uncompressedBuffer);
uncompressedBuffer = uncompressedBuffer.slice(0, uncompressedSize);
var targetString = uncompressedBuffer.toString();

Data is received from Browser side, however uncompressedSize is -1 in Browser.

Now problem solved by my self. There are 2 problems in the above solution:

Both Nodejs and Browser should use same encryption algorism.
During network transfer, base64 encoding should be used.
Working code:
From NodeJS side:

var rawbuffer = new Buffer(rawstring, "utf8");
var originlength = rawbuffer.length;
var output = new Buffer( lz4.encodeBound(rawbuffer.length) );
var compressedSize = lz4.encodeBlock(rawbuffer, output);
output = output.slice(0, compressedSize);
var outputstr = output.toString('base64');
res.setHeader("Original-Length", originlength);
res.send(outputstr);

From Browser side:
var targetLength = xhr.getResponseHeader('Original-Length');
var originBuffer = Buffer.from(xhr.responseText, 'base64');
var uncompressedBuffer = new Buffer(parseInt(targetLength));
var uncompressedSize = LZ4.decodeBlock(originBuffer, uncompressedBuffer);
uncompressedBuffer = uncompressedBuffer.slice(0, uncompressedSize);
var targetString = uncompressedBuffer.toString('utf8');


Host helper C++ class

Adding a C++ helper class CLAP host developers can easily derive from
Left out here for future PRs / discussion

misbehaviour checks, e.g. some ensureMainThread / ensureAudioThread methods, checking level templating etc.
clap-helpers repository description: "Minimal set of helpers to implement your plugin" would need to change to something more welcoming also for host devs -> or should this be split into two separate repos instead ("clap-plugin-helpers" and "clap-host-helpers")?
documentation
test

Probably I'll focus on the clap::helpers::Host first and leave out the PluginProxy stuff (can go into a separate PR). Main goal would be to extract the reusable stuff from PluginHost in https://github.com/free-audio/clap-host/blob/main/host/plugin-host.hh so that PluginHost can be derived from the new clap::helpers::Host class

Good luck with this task, this isn't an easy one. The host'll be harder to generalize/glue than the plugin.

reverted the PluginProxy changes
removed the template code (at least for now)
added all extensions necessary to derive the PluginHost class from the free-audio/plugin-host repo

misbehaviour checks are missing completely but I think this might be OK in the first run
Please also have a look into this commit in my fork of the plugin-host repo:
f22ed540aa206c2452bdfb9011a76cf3b14cd9f2
This is how I think it could look like using the new clap::helpers::Host class. Maybe some details are still missing. What do you think @abique ?

I think we could leave it like this for now except you want to have misbehavior checks from the beginning.

Please also have a look into this commit in my fork of the plugin-host repo:
f22ed540aa206c2452bdfb9011a76cf3b14cd9f2
This is how I think it could look like using the new clap::helpers::Host class. Maybe some details are still missing. What do you think @abique ?

That'd work for me. Thank you for doing this!

I think we could leave it like this for now except you want to have misbehavior checks from the beginning.

I can see that you still have some checkboxes opened. Whenever you think it is ready to be merged I'll give it a review and merge it.

Ok, @abique I looked through it and think it's ready enough for a review.
In the first comment I collected some ideas for future work / PRs.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: Trinitou:x: u.wu.w seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

One thing: In commit<PHONE_NUMBER>efd8fc71ccb15e929b14c9ce498dc5 inside the ::from method, I replaced the std::cerr + std::terminate with throw which I copied from the clap-host repo. Since the from method now is noxcept, this will cause a warning I think. Should we better switch back to std::terminate?

@Trinitou Thank you for this work.
I'll review it in the afternoon.


SvelteKit release candidate migration: index

This is the first PR in a collection of linked PRs which will be sequentially merged to resolve #502.
Migration guide: https://github.com/sveltejs/kit/discussions/5774
What this PR accomplishes

Recreation of the website based on npm create svelte@latest acmcsuf.com (ran on 9/10/22)
Moved [TypeScript] library/[Svelte] component files from /src/lib/ to /routes/ directory. Introduction of /lib/public/legacy/ for extraneous files.
Copied over docs, assets, and static content into / and /static/
Renders the / index page

What this PR is NOT

Does not migrate /src/service-worker/ (https://kit.svelte.dev/docs/service-workers)
Does not migrate /src/params/ (https://kit.svelte.dev/docs/advanced-routing#matching)
Does not migrate error page, /src/routes/+error.svelte (https://kit.svelte.dev/docs/routing#error)
Does not migrate Svelte hooks (https://kit.svelte.dev/docs/hooks#server-hooks)
Disobeys the old file architecture

What is there left to do?

[x] Support all existing acmcsuf.com pages

[x] SSR pages

[x] /blog
[x] /events
[x] /:shortlink.svg ([link=link].svg.ts => /src/routes/[link=link].svg/+page.server.ts)

[x] static pages

[x] /
[x] /about
[x] /cssg
[x] /1st
[x] /privacy
[x] /quiz
[x] /teams
[x] /nodebuds

[x] Support misc. acmcsuf.com features

[x] URL shortener hook (original, docs)

Replaced by mega-PR #577.


Use annotations for teams

Hi,
We make use a lot of helm charts and most of them only allow to set Annotations and not Labels for the deployments.
In kubecost we would like to make use of Team Label setting to split the cost between teams however it only seems to accept Labels as per name.
Regards

Thanks for reporting! We used to support exactly this but found that most weren't relying on annotations for allocation. @AjayTripathy for his input.
@acarsercan, what's the impact/priority of this for you?
Also, a potential work around in the meantime is to give the namespace a Team label and it will be applied to all workloads/Helm resources in that namespace. Is this a potential solution for you?

Thank you for the reply.
I'm making great use of team labels, however it seems some of the popular public helm charts do know understand labels at the moment but do provide values to set annotations (ie fluentd). Obviously I should contribute to improve the chart in question, but for now I was trying to work around it.
I will close it for now

Sounds good, please feel free to re-open if we can get you anything!


Add CQMToBQMInverter.to_dict() and .from_dict()

Closes https://github.com/dwavesystems/dimod/issues/977

Codecov Report

Merging #978 (d4b172f) into main (1393e05) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #978      +/-   ##
==========================================
+ Coverage   84.51%   84.53%   +0.02%
==========================================
  Files          80       80
  Lines        6973     6984      +11
==========================================
+ Hits         5893     5904      +11
  Misses       1080     1080

Impacted Files
Coverage Δ

dimod/constrained.py
92.67% <100.00%> (+0.20%)
:arrow_up:

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 1393e05...d4b172f. Read the comment docs.


readme: add description of ECMAScript

Added a description of ECMEScript to the readme and adjust the sample files to match.

@ljharb @shadowspawn
Thank you both for your thorough reviews. I have made the necessary updates based on your feedback.

Thanks for working through our various comments @unikounio

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

Project coverage is 98.78%. Comparing base (6715df1) to head (04a4451).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #62   +/-   ##
=======================================
  Coverage   98.78%   98.78%
=======================================
  Files           1        1
  Lines         165      165
  Branches       70       70
=======================================
  Hits          163      163
  Misses          2        2

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

@ljharb
Thank you for the thoughtful suggestion. I have addressed it.

Urk. Failing a couple of lint tests due to using "new" features in the example code (const and modules). To be clear, these would be problems if they were in the actual implementation since we support very old node versions.
My first thought is examples using modern syntax are more appropriate and useful for new users. Is it appropriate to add an override to .eslintrc for the examples folder and allow modern features?
Do you already have a preferred way of approaching this @ljharb ?

yep! add an "overrides" object for example/** in the root eslintrc, and extend @ljharb/eslint-config/node/latest.

Are you happy to look at this @unikounio , or would you like a hand with the eslint change? (Fairly easy hopefully, but depending on what you already know and what you are interested in learning...)

@shadowspawn
Thank you for your suggestion. I would like to do this ESLint configuration change. Would it be better to include this change in this PR or would it be more appropriate to create a new PR for this  change?

Include in this PR thanks.

Just pushed the changes to apply the latest ESLint config to the examples directory.
Please take a look when you have a moment. Thanks!

Thank you both so much for helping me with this PR!
@ljharb and @shadowspawn, I deeply appreciate your support and the valuable feedback you've provided.
I've learned a lot from this experience and am looking forward to any future opportunities to work together again!


Uploaded Custom App Gone Missing

We have custom apps uploaded for our organization on Teams app store. It was working fine until yesterday. Now I have two custom apps which is not available anymore. End users who installed these app, are also impacted. They don't see it anymore.
I used o365 cli commands to list the uploaded apps.
I was able to see the app yesterday - 11/12/2019
But I am not able to see starting today - 11/13/2019

@NWH-SAmin5 thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.


Unable to connect to Atom in any fashion through the app in Windows 10. "Loading themes", etc.

Description
I installed Atom in the most basic way possible. Went to the website, clicked "Download Windows Installer". It did it's thing. Now I can open Atom, but I can't seem to download any packages, themes, anything.
https://postimg.org/image/ooxogddat/
https://postimg.org/image/6nejikj9x/
I've googled this for a while, I've tried setting my environmental variables to every path in existence. Still nothing. I've run Atom in safe mode (i.e. I can run it from the command line). Not sure what else to try. Something extremely basic is missing in the install process.
Steps to Reproduce

Download Atom on Windows 10
You can't download anything from github or atom in general

Expected behavior:
I would be able to download a snazzy theme (or APIs to use this as my Python IDE or whatever).
Actual behavior:
I was not able to download any snazzy themes.
Versions
Running 'apm --version' gets me:
apm  1.12.5
npm  3.10.5
node 4.4.5
python 3.5.2
git 2.10.1.windows.1
visual studio

Do you have any quotation marks in your path variable?

https://postimg.org/image/ffaa4802r/

There is another Path variable in the system variables section that you can check for quotation marks.

?????

The edit button is greyed out

Try to echo the variable from the command line instead. In cmd.exe type echo %path%.

C:\Users\Takkeezi>echo %path%:
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Python\Scripts\;C:\Python\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;"C:\Program Files (x86)\Microsoft Office\DOCRECRYPT";C:\Program Files (x86)\Skype\Phone\;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files\Git\cmd;C:\Users\Takkeezi\AppData\Local\Microsoft\WindowsApps;C:\Users\Takkeezi\Documents\Atom\resources\cli\;C:\Users\Takkeezi\AppData\Local\atom\bin

This will be fixed in Atom 1.13.0.  There is a chance that this fix will be backported to 1.11 and 1.12 but that may or may not happen.

Thanks!
Is there a release date for this? Also, is there a workaround in the mean time?

Workaround is to edit the environment variable and remove the quotation marks. There is no release date set for Atom 1.13 yet.
This part "C:\Program Files (x86)\Microsoft Office\DOCRECRYPT"; needs to be C:\Program Files (x86)\Microsoft Office\DOCRECRYPT;

Thanks for the help!


Jinja2 Import Error From Fresh Ubuntu Install

I installed Mythril on my Ubuntu 16.04 Virtual Machine using the instructions found on the wiki page here.
When I tried to do a myth -x contract.sol on one of the example contracts, I got an import error.

I googled around and doing
sudo pip3 install --upgrade jinja2
fixed the error and allowed me to use the myth command to test contracts.
So maybe either:

Include that command in the wiki instructions (although this is not the neatest solution).
Package that command somewhere  in the mythril install process. (Perhaps in pip3 install mythril.)

Just bringing it up since it was giving me problems. I'm not sure if this affects every other fresh install.

Hi Ramiall, thanks for the report!
Did pip3 install mythril complete successfully? Because jinja 2 should actually be installed during the execution of that command

It may be a problem with a system version of jinja2. We may want to add a requirement of jinja2>=2.9 to make sure our version is new enough to have the method available

Ah unfortunately I closed the terminal and didn't check to see if it installed successfully or not, so I'm not sure if it's a version issue or an install failure.

I had the exact same problem yesterday, and also solve it with sudo pip3 install --upgrade jinja2

@joshuata, so jinja2>=2.9 should be required by mythril?
At the moment it isn't so that would indeed explain why the installation failed for @Ramlall and @bordalix.

@norhh  Can you take this issue?


fix(@angular-devkit/build-angular): run build steps for differential …

…loading in sequence to avoid confusing progress information
Before, the build tasks run in parallel and so the different webpack
instanced competed over the same lines on the console.
This causes an issue with watch mode. We'll address this with an further
PR.

could we consider disabling diff loading in watch mode in the same PR, so we don't have to be careful to avoid releasing a broken RC if this lands and that fix doesn't?


Fix momentum optimizer

The implementation of SGD with momentum in optimizers.py was wrong. Thanks to @sschoenholz for noticing!
For background, there are two common parameterizations of ordinary momentum:

TensorFlow and Keras use v = mu * v - eta * g; x = x + v (which expands to e.g. x3 = x0 - (eta0*mu^2 + eta0*mu + eta0)*g0 - (eta1*mu + eta1)*g1 - eta2*g2)
PyTorch and Sonnet use v = mu * v + g; x = x - eta * v (which expands to x3 = x0 - (eta2*mu^2 + eta1*mu + eta0)*g0 - (eta2*mu + eta1)*g1 - eta2*g2)

Other than their representation of internal state v, those expansions show that these two formulas only differ in how they're affected by changing learning rates. There are two analogous implementations for Nesterov momentum, again equivalent other than in the case of learning rate changes. The original papers describing momentum and Nesterov momentum assume constant learning rate, so they're ambiguous between the formulations.
The version of momentum in optimizers.py wasn't equivalent to any of these four, even in the case of constant learning rate (see https://cocalc.com/projects/c76fe1fe-6c09-4ff6-8666-c3556f3ea62d/files/2019-10-18-174244.sagews?session=default for derivations.) With this change, it exactly matches the formulas used by PyTorch (when damping=0) and Sonnet.

See also HIPS/autograd#289 for a discussion.
I wouldn't say the implementation currently optimizers.py is wrong just because it uses a different parameterization. In that Autograd issue I showed how to map a fixed learning rate from the TF/Keras convention to the Autograd/JAX convention. Here's a version of the same for JAX:
from __future__ import print_function
import numpy as np

gs = np.random.randn(10)

def tf_momentum(x0, v0, eta, mu):
    x = x0
    v = v0
    for g in gs:
        v = mu * v - eta * g
        x = x + v
        print(x)
    print()

def jax_momentum(x0, v0, eta, mu):
    x = x0
    v = v0
    for g in gs:
        v = mu * v - (1.0 - mu) * g
        x = x + eta * v
        print(x)
    print()

tf_momentum(0., 0., 0.5, 0.9)
jax_momentum(0., 0., 0.5 / (1. - 0.9), 0.9)

0.02812472364200032
0.7963849340762899
1.4299981786941829
1.3300049027532435
0.8492142695935796
-0.08592686603497257
-0.830986524831802
-1.0853028959102888
-1.167070274778137
-1.2185173417800437

0.028124723642000315
0.79638493407629
1.4299981786941833
1.3300049027532443
0.8492142695935807
-0.08592686603497135
-0.8309865248318008
-1.0853028959102877
-1.1670702747781359
-1.2185173417800428

But I agree with your point (I think) that it's good to follow conventions. The downside now is this will change the behavior of users' existing code. One option is to delay this change until we make stax2 / optimizers2. But this might be minor enough that we can just make the change now, so long as we warn people in JAXers chat. What do you think?
(Btw the cocalc link didn't load for me.)

@froystig is there a canonical reference we can link to in our comments / docstrings?

I completely missed the Autograd connection here (in retrospect I should have looked there first!) and I also misread a sign while trying to relate the JAX and TF formulations (so it looked like they weren’t reparameterizations, even though @sschoenholtz had pointed out the relationship to me already). While I can see conceptual arguments for either basic formulation (e.g., is the step size controlling the instantaneous effect of the gradient or multiplying the overall velocity?) it looks like the ship has probably sailed in favor of the learning rate parameterization used in TF and PyTorch. On the other hand it’s hard to choose between the TF and PyTorch parameterizations of the velocity, since the difference is subtle and people’s expectations are split...

Maybe we can check sys.path to see if the user has PyTorch or TensorFlow installed, then switch our convention based on that. :D


second attempt to fix the circular dependency between redev and redev_comm

This should be a cleaner fix than #21 for the circular dependency between redev.h and redev_comm.h discussed in #16.

Looks fine. With the current fix I don't think redev_comm.h needs to be called redev_comm_impl.h. That was more about the fact that the header file was previously getting included at the bottom and there could have been issues if the user also included it.
I'm fine if you merge as is, or change the name back.

Thank you.  I reverted the redev_comm.h name change.


Replace token pool "validate tx" logic stubs with a new "activate" action

Part of #218
Resolves #315
Resolves #318
A pool must be activated before using it. The activation step will trigger the pool
creation event to be re-sent (so that it can be used to confirm the pool), and will
also trigger the plugin to begin sending transfers from that specific pool.
This solves a number of holes with token pool creation - including validating the
pool announcement against the local plugin and ensuring transfers are not received
before the pool is fully created.
Requires https://github.com/hyperledger/firefly-tokens-erc1155/pull/43 (E2E tests will fail until this is integrated).
There are breaking changes in the internal API between core and the tokens connector,
but they should be invisible to an end user. Migrations are in place to transition any
pre-existing token pools.

Codecov Report

Merging #317 (5ababff) into main (feac44a) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head 5ababff differs from pull request most recent head 18792ed. Consider uploading reports for the commit 18792ed to get more accurate results

@@            Coverage Diff            @@
##              main      #317   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          231       231
  Lines        12542     12605   +63
=========================================
+ Hits         12542     12605   +63

Impacted Files
Coverage Δ

internal/apiserver/route_post_token_pool.go
100.00% <ø> (ø)

...nternal/apiserver/route_post_token_pool_by_type.go
100.00% <ø> (ø)

internal/assets/manager.go
100.00% <ø> (ø)

internal/assets/token_pool.go
100.00% <100.00%> (ø)

internal/assets/token_pool_created.go
100.00% <100.00%> (ø)

internal/assets/token_transfer.go
100.00% <100.00%> (ø)

internal/broadcast/tokenpool.go
100.00% <100.00%> (ø)

internal/database/sqlcommon/tokenpool_sql.go
100.00% <100.00%> (ø)

internal/database/sqlcommon/tokentransfer_sql.go
100.00% <100.00%> (ø)

internal/events/tokens_transferred.go
100.00% <100.00%> (ø)

... and 4 more

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 feac44a...18792ed. Read the comment docs.

I don't think the e2e failure is related - raising separate issue #328

https://github.com/kaleido-io/firefly/pull/39 raised as a PR into this branch, to address the (unrelated) E2E failure

(... the coverage red dot will be addressed when https://github.com/hyperledger/firefly/pull/325 merges)


DeviceTwin.updateDesiredProperties is not implemented

The method DeviceTwin.updateDesiredProperties is documented but throws a NotImplementedException rather than being usable.
As implementing the method is considered an enhancement the documentation should be updated to reflect that it cannot be used. Similar documentation bugs likely exist for other methods in this SDK.

Porting this to the azure-sdk-for-java repo so someone from Digital Twins can double check the documentation

This issue has been fixed for a while in the track 1 library in question. Closing this issue


Update upstream and fix tests

After the last sync, some tests were broken which have since been fixed upstream, and we were also already hundreds of commits behind, so trying another sync.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 10 committers have signed the CLA.:white_check_mark: jbearer:x: tynes:x: protolambda:x: Inphi:x: trianglesphere:x: pcw109550:x: mslipper:x: hamdiallam:x: sebastianst:x: felipe-opYou have signed the CLA already but the status is still pending? Let us recheck it.

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:

@jbearer Does the nix shell work for you? I'm getting
nix develop                                                                                0.002s  fix/tests  17:05:24
error: builder for '/nix/store/v37pnrzzm5czbig6jckvc8mq0i28gjw0-source.drv' failed with exit code 1;
       last 7 log lines:
       >
       > trying https://github.com/foundry-rs/foundry/releases/download/nightly-94ae8974c1ac479f8d6c8ba5832b852afccfd0c5/foundry_nightly_linux_amd64.tar.gz
       >   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
       >                                  Dload  Upload   Total   Spent    Left  Speed
       >   0     9    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
       > curl: (22) The requested URL returned error: 404
       > error: cannot download source from any mirror
       For full logs, run 'nix log /nix/store/v37pnrzzm5czbig6jckvc8mq0i28gjw0-source.drv'.
error: 1 dependencies of derivation '/nix/store/fb0g7prlivvynzg4fni75f249dmi6zgn-foundry-0.0.0.drv' failed to build
error: 1 dependencies of derivation '/nix/store/759aqpkid1hmvpqhzjl51qavyac7fljq-nix-shell-env.drv' failed to build

Hmm it works for me but I do get a 404 from that foundry release. I wonder if they yanked the release and my Nix shell is building from cache?

Maybe we can go back to using   inputs.foundry.url = "github:shazow/foundry.nix/monthly";. I think I added a particular commit when I was debugging the mismatching bindings but since we have to use docker for that anyway we might as well use the monthly branch of foundry.nix if it works.

I'll try that

What commands do you use to test locally?

For this one, in packages/contracts-bedrock pnpm gas-snapshot should succeed and not result in any changes. It seems to have worked. Can you pull and check if the Nix shell builds now?


Figure out what the json reponse format is

Format is here (linked to manage changes):
https://github.com/unity-sds/unity-project-management/issues/101#issuecomment-2045802548

see https://github.com/unity-sds/unity-project-management/issues/101

Would like to see:
recent_healthy: stores the most recent timestamp of a HEALTHY response (same as “date” if status is HEALTHY)
Maybe : ”endpoint” or “source” to confirm what’s being checked?
Think about: Authorization- who owns the username/password for hitting an authenticated endpoint. Multiple components for a service area
future: historical records and tracking 'events'

@rtapella any update on this ticket?  Per the plan it was slated to be complete in 24.2.1.  Seems like a low-hanging fruit


Immediate crash when selecting "Groups > all groups I belong to (direct or indirect membership) with count"

Describe the bug
Clicking the sample query for "all groups I belong to (direct or indirect membership) with count" in the Groups area causes Graph Explorer to completely disappear, forcing a full page refresh to recover.
To Reproduce
Steps to reproduce the behavior:

Go to https://developer.microsoft.com/en-us/graph/graph-explorer
Sign in using work account
Scroll down to Groups and expand, then click "all groups I belong to (direct or indirect membership) with count"
Graph Explorer disappears, leaving only the page header and footer.

Expected behavior
Same output as you would get if you add "/memberOf" at the end of the URL (full URL should be "https://graph.microsoft.com/v1.0/me/memberOf") and click Run Query
Screenshots

Desktop (please complete the following information):

OS: Windows 10 20H2 19042.867
Browser: Edge (Dev Channel) Version 91.0.831.1 (Official build) dev (64-bit)

AB#8726

similar to #895


Create static_pressure_from_height.py

I am not familiar with coding. I coded this law based on already existing files. It could contain some mistakes.

Added by another collaborator


ESC button does not bring up Game Menu.

Describe the bug
ESC button does not bring up Game Menu.
To Reproduce
Steps to reproduce the behavior:

Start a new game.
Enter a city.
Exit city by hitting ESC button (not the X button in the top right corner!).
Now ESC does not bring up Game Menu any more until you restart the game.

Expected behavior
ESC button would bring up Game Menu.
General informations

OS: Win 7
Version <IP_ADDRESS>2
Expansion Rise and Fall
Other mods: Quick start

Save game and logs
GORGO 1 4000 BC.zip
GORGO.1.4000.BC.zip

This is related to your other issue, and can be worked around in the same way.
Enable one of the following three official DLC's:

DLC: Aztec Civilization Pack
DLC: Khmer and Indonesia Civilization Pack
DLC: Nubia Civilization Pack

Quoting my other response for convenience:

@ihendriks wrote:
This is a pretty strange issue.
I can reproduce it by disabling the following three official DLC's:

DLC: Aztec Civilization Pack
DLC: Khmer and Indonesia Civilization Pack
DLC: Nubia Civilization Pack

If you disable these three you run into this issue. Enabling any of the above DLC's will resolve the issue...
The other DLC has no affect on this issue and can be enabled or disabled as you please (the exception being the Scenario's related to the above DLC's, as they are dependent on those).
If you don't have the above DLC's I don't currently have a workaround for you, so you'll have to wait for us to actually fix the bug.


Embed the Donate button into the post-download thank you page

After discussion in the Steering committee call, we would like to add embedding the new "Donate to the Adoptium Working Group" button into the post-download thank you page.
see: https://www.eclipse.org/donate/adoptium/

Duplicate of https://github.com/adoptium/website-v2/issues/114


Cannot show change: Git error occurred while getting commit. Please check if Gerrit is configured as remote for the currently used Git repository.

I have multiple modules, each one has its own git repo.
When I want to see a change files I'm getting :
Cannot show change: Git error occurred while getting commit. Please check if Gerrit is configured as remote for the currently used Git repository.
What do I have to check specifically?

I had the same issue.
The IDE tuning, which helped me: I changed my git SSH settings for the IDE. My 'SSH executable' had "Built-in" value, but I changed to "Native" and it worked for me.
Turns out, that the Gerrit plugin just couldn't fetch any code/changes simply because of wrong ssh.

@pvasilyev: Thanks for posting your workaround.
For me, it also works with the "Build-in" ssh-executable. Do you have some special ssh / git settings on your system?

Actually nothing special except the custom (non default) ssh-key for the gerrit server access.
So to have command line access I have following lines in my ~/.ssh/config
Host <gerrit-server>
Hostname <gerrit-server>
IdentityFile ~/.ssh/<custom-ssh-key>


Issue while retrying uploads

Hi everyone, I have an issue with retrying uploads. I've been uploading small files (less or equal 100KB), sizeUploaded() for them were the same as files size, but short-term disconnection happened and the code reached retry case case 'retry':           this.flowObj.fire('fileRetry', this, chunk);           break;
Files were already uploaded, however the retry was fired multiple times and then just failed.
Shouldn't the file size be checked while file upload retrying?

Hi! File size check is optional as this is not a stream upload. It's uploading in chunks and file for each chunk is created only if file upload succeeds. Also partial file upload is not possible since we are doing a chunk rename instead of a copy. And lastly we do check the size of each chunk as it's not cpu intensive. Answers are based on php implementation here https://github.com/flowjs/flow-php-server/blob/master/src/Flow/File.php#L79

@AidasK thank you for the answer! Now I'm just trying to understand, can it be somehow configured within flowjs npm package or it requires some custom handling from my side?


bump helm dependency to v3.15.4

The latest helm version contains an important CVE fix: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-41110
@elenz97  Requesting review on this and a new patch release if this is approved and merged

@elenz97 Just following up on this PR

@tariq1890 I've published v0.12.13 containing your changes just now :rocket:


dummyhttp: 1.0.3 -> 1.1.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/svenstaro/dummyhttp/releases.
meta.description for dummyhttp is: Super simple HTTP server that replies a fixed body with a fixed response code
meta.homepage for dummyhttp is: https://github.com/svenstaro/dummyhttp
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.1.0 with grep in /nix/store/2jwghfa55vrw9sr4kn71m75imzylarcn-dummyhttp-1.1.0
found 1.1.0 in filename of file in /nix/store/2jwghfa55vrw9sr4kn71m75imzylarcn-dummyhttp-1.1.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

dummyhttp

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/2jwghfa55vrw9sr4kn71m75imzylarcn-dummyhttp-1.1.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A dummyhttp https://github.com/r-ryantm/nixpkgs/archive/3dc62fe36a4763595acac1f398d170e511a5e9a5.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/3dc62fe36a4763595acac1f398d170e511a5e9a5#dummyhttp

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/2jwghfa55vrw9sr4kn71m75imzylarcn-dummyhttp-1.1.0
ls -la /nix/store/2jwghfa55vrw9sr4kn71m75imzylarcn-dummyhttp-1.1.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

dummyhttp

Maintainer pings
cc @GuillaumeDesforges for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge


Persona Initiative - Long Live the LLM

Give OpenVoiceOS some sass with Persona!
Phrases not explicitly handled by other skills will be run by Persona, so nearly every interaction will have some response.  But be warned, OpenVoiceOS might become a bit obnoxious...
Large language models are having their Stable Diffusion moment. The next few months will be filled with new useful, and potentially controversial applications, pushing incumbents and startups to innovate once again.
The last weeks were filled with exciting announcements for open-source LLMs:

Meta released LLaMA - an LLM collection of models ranging from 7B to 65B parameters.
Stanford researchers released Alpaca, an instruction fine-tuned model based on Meta’s 7B LLaMA behaving similarly to OpenAI’s powerful GPT Davinci model.
Instruction fine-tuning is powerful for language models because it allows for targeted training on a specific task or domain, resulting in improved performance on that task and enabling transfer learning to other tasks.
LAION released OpenChatKit - a 20B parameter ChatGPT-like model under the Apache-2.0 license, meaning companies can incorporate it in their commercial products. They also released the underlying 43M instructions dataset so others can further fine-tune their LLMs.

Until recently, powerful LLMs were only accessible through APIs: OpenAI and now PaLM. Now the open-source community showed how the smallest LLaMA (7B) achieves GPT Davinci-like performance.
OpenVoiceOS is already adopting these technologies, the current stretch goal of our fundraiser aims to bring the Persona project to it's first stable release
https://www.gofundme.com/f/openvoiceos
 Persona

Core personality
Skills personality
Spoken Answers API + "Solver" plugins
"Chatbot" Skills

Core personality

[x] new persona service, using neon solver plugins https://github.com/OpenVoiceOS/ovos-persona

[ ] bus api to manage personas
[ ] default Persona settings under mycroft.conf
[ ] allow persona to come from message.context, similarly to lang https://github.com/OpenVoiceOS/ovos-bus-client/blob/dev/ovos_bus_client/session.py#L24

[ ] OPM integration

[ ] resource file based personas (json configs), https://github.com/OpenVoiceOS/ovos-persona/tree/dev/personas
[ ] solver plugins can provide default personas automatically, similar to what i have been doing for TTS voices https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/131
[ ] runtime scanning of available personas
[ ] possible "marketplace" integration for user defined personas

in mycroft.conf
"persona": {
    "gender": "male",
    "attitudes": {
        "normal": 100,
        "funny": 70,
        "sarcastic": 10,
        "irritable": 0
    },
    "solvers": [
        "ovos-solver-plugin-llamacpp",
        "ovos-solver-plugin-personagpt",
        "ovos-solver-failure-plugin"
   ],
   "ovos-solver-plugin-llamacpp": {
        "persona": "helpful, creative, clever, and very friendly"
    },
    "ovos-solver-plugin-personagpt":{
        "facts": [
            "i am a quiet engineer.",
            "i'm single and am looking for love."
            "sadly, i don't have any relatable hobbies.",
            "luckily, however, i am tall and athletic."
            "on friday nights, i watch re-runs of the simpsons alone."
       ]
   }
}

Skills personality

[ ] full details here https://github.com/OpenVoiceOS/OVOS-workshop/issues/56

New file format, .jsonl
jsonl format info: https://jsonlines.org/
{"utterance": "stick the head out of the window and check it yourself", "attitude": "mean", "weight": 0.1}
{"utterance": "current weather is X", "attitude": "helpful", "weight": 0.9}

1 - load .jsonl file if it exists, else old .dialog file
2 - select an attitude based on weights defined in mycroft.conf / current active persona
3 - filter samples per attitudes
4 - select based on weights of .jsonl file

Spoken Answers API + "Solver" plugins
these plugins automatically handle language support and auto translation, they provide the base for a "spoken answers" api in the style of wolfram alpha
the solvers service allows loading several of those plugins sorted by priority, similarirly to the fallback skills mechanism, this allows to check internet sources by order of reliability/functionality

[x] main service implementation done under NeonAI some time ago https://github.com/NeonGeckoCom/neon_solvers

[ ] create server Docker endpoint like we have for other plugin classes

[x] knowledge base plugins already used in individual common query skills for lang support

[x] https://github.com/NeonGeckoCom/neon-solver-plugin-ddg
[x] https://github.com/NeonGeckoCom/neon-solver-plugin-wikipedia
[x] https://github.com/NeonGeckoCom/neon-solver-plugin-wolfram_alpha
[x] https://github.com/NeonGeckoCom/neon-solver-plugin-wordnet

[x] create your own chatbot persona by choosing what plugins you install

[ ] ovos-solver-plugin-personagpt - https://github.com/illidanlab/personaGPT
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-llamacpp
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-llmcpp

Alpaca.cpp, GPT4All.cpp or Bloomz.cpp

[ ] ovos-solver-plugin-alpacalora - https://github.com/tloen/alpaca-lora
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-openai-persona
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-dialogpt <- finetune models, eg, via tweets or reddit datasets
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-rivescript <- user scriptable responses (easy)
[x] https://github.com/OpenVoiceOS/ovos-solver-plugin-aiml <- user scriptable responses
[x] https://github.com/OpenVoiceOS/ovos-solver-pandorabots-plugin
[x] https://github.com/OpenVoiceOS/ovos-solver-failure-plugin <- fallback-unknown equivalent

[ ] integrate with ovos-personal-backend

[ ] new "spoken answers" api endpoint (default plugins: wikipedia + ddg + failure)
[ ] deprecate wolfram_alpha integration, make endpoint call "spoken answers" api for selene compat
[ ] one less external api key needed by default

[ ] integrate with ovos-backend-client https://github.com/OpenVoiceOS/ovos-backend-client/pull/28

"Chatbot" Skills
the priority of these fallback skills should be based on how good they are to allow them to co-exist, but in practice only 1 online + offline combo should be installed, they also use the solvers framework internally

[ ] skill-ovos-fallback-personagpt - https://github.com/illidanlab/personaGPT
[ ] skill-ovos-fallback-llamacpp - https://github.com/ggerganov/llama.cpp
[ ] skill-ovos-fallback-alpacacpp - https://github.com/antimatter15/alpaca.cpp
[ ] skill-ovos-fallback-alpacalora - https://github.com/tloen/alpaca-lora
[x] https://github.com/OpenVoiceOS/skill-ovos-fallback-dialogpt
[x] https://github.com/OpenVoiceOS/skill-ovos-fallback-chatgpt
[x] https://github.com/OpenVoiceOS/skill-ovos-fallback-aiml
[x] https://github.com/OpenVoiceOS/skill-ovos-fallback-rivescript
[x] https://github.com/OpenVoiceOS/skill-ovos-fallback-unknown
[ ] Unify all of this under a single skill-ovos-fallback-persona

[ ] personality settings intents, eg "increase sarcasm by 20%"
[ ] persona intents, eg, "enable story teller persona"

[ ] Standalone skills remain available, but can be deprecated (via new "spoken answers" api)

generic support for solvers will be included in ovos-backend-client
offline or hosted in a remote backend (eg, run Llama via ovos-personal-backend)
just install solvers instead of skills for equivalent offline setup

Inspiration
MycroftAI wanted to start an initiative called ‘Persona’ - a tool to help build distinct personalities for Mycroft. Think Sassy Mycroft, Polite Mycroft and so on.
the technology just wasn't there yet and the backend implementation was never finished or made public but the beta skill is still available (non-functional) https://github.com/MycroftAI/skill-fallback-persona

persona support added to llamacpp - https://github.com/OpenVoiceOS/ovos-solver-plugin-llamacpp/commit/40aca66e2f9fd4b770bef20cee58476c2b0523e2

'persona service repo is up https://github.com/OpenVoiceOS/ovos-persona

have initial code for a memory module for the solver plugins, it keeps context and prepares prompts to feed to a LLM, first attempt at integration with online services too
    c = ChatHistory("this assistant is {persona} and is called {name}", persona="evil", name="mycroft")
    c.user_says("hello!")
    c.llm_says("hello user")
    c.user_says("what is your name?")
    c.llm_says("my name is {name}")
    print(c.prompt)
    # this assistant is evil and is called mycroft
    # User: hello!
    # AI: hello user
    # User: what is your name?
    # AI: my name is mycroft

    def get_wolfram(query):
        return {"wolfram_answer": "42"}  # return text or a dict, dict also populates self.variables

    c = InstructionHistory("you are an AGI, follow the prompts")
    c.instruct("what is the meaning of life", get_wolfram)
    print(c.variables) # {'wolfram_answer': '42'}
    c.llm_says("the answer is {wolfram_answer}")
    print(c.prompt)
    # you are an AGI, follow the prompts
    #
    # ## INSTRUCTION
    #
    # what is the meaning of life
    #
    # ## DATA
    #
    # wolfram_answer: 42
    #
    # ## RESPONSE
    #
    # the answer is 42

I was going to be trying to do a bit of this myself over my vacation this week then finally found your work here.  From what I see reading here, the workflow is something like:

Setup Openvoice.OS (working on this on my two mark2 devices right now)
Get the persona plugin/skill/etc. setup on the personal backend that i'm making for the previous step
Setup a NeonAI solver that has the plugins I want (largely geared towards LLM for what I was planning to do) and point the persona plugin at that somehow.
???
Profit?

I also understand that this isn't finished, isn't very documented, etc.  but what happens with this then is that the persona bit here you've made then talks to the message bus for the system and acts as a complete fallback when nothing else can respond and then it goes out to the neonai solver through the fallback or via the direct skill (in theory).  Right now it looks like the selection of which method that is, is based on the fallback skill.  This will basically result in the device/system/etc. to respond via a single result from the LLM and whatever context/personality has been configured to be passed over to it?
Main things I see that aren't implemented yet are memory or chatbot style communication, i.e. where you could continually argue with the same LLM with a hope of it keeping track of the conversation.
My original thought was going to be trying to build something on top of langchain for trying to create a crude fallback skill to do this since it had some more stuff pre-created for all this but looking at your work I think it'd end up being able to do more than I was thinking I'd accomplish directly myself anyway.  I'll give all this a shot to setup and see if I can find any things that could use some help in your work and at the very least try to help with some in initial documentation for it.

Love the work so far! I don't see a roadmap item/checkbox for -server versions of the plugins. Any chance those could be added? :)

Love the work so far! I don't see a roadmap item/checkbox for -server versions of the plugins. Any chance those could be added? :)

it is there for the solver plugins
the ovos-persona repo will have a Dockerfile too for standalone usage probably, but mainly it will be part of core as a new service in the intent pipeline, you can see it is already listed here https://github.com/OpenVoiceOS/ovos-core/issues/293

tracking progress here https://github.com/OpenVoiceOS/ovos-persona/issues/4


When will ESP32C6/ESP32H2 support BLE uart HCI? (IDFGH-12064)

Is your feature request related to a problem?
esp32 esp32c3 esp32s3 already supports uart hci. When will esp32c6 and esp32h2 support it?
Describe the solution you'd like.
No response
Describe alternatives you've considered.
No response
Additional context.
No response

You can use the following example: esp-idf/examples/bluetooth/nimble/hci  to test uart hci for ESP32C6 and ESP32H2.

Since there was no response from the user closing this issue. If you will encounter further problems feel free to reopen this or create a new issue.
Cheers!


cannot find the files under the posts directory

When I follow the steps and complete getStaticProps part:
I got this error (I changed my real username to "username" in the path below):
Error: ENOENT: no such file or directory, scandir '/Users/username/Desktop/nextjs-blog/posts'
the path is correct and there are two markdown files under the top-level posts directory, but it still got the error

Hi! I had the same error, what helped me was to add 'pages/' before posts. So it will be 'pages/posts'.

im having the same issue and i tried changing the "posts" to "pages/posts" and it is still giving me the error that says--->
Error: ENOENT: no such file or directory,
stuck on what to do next

I have the same problem, WTF????

I didn't pass the props correctly
I returned props without {} in the function
It looked like this:
export async function getStaticProps({ params }) {
const postData = await getPostData(params.postWithApiDynamic);
return {
props: postData: postData,
}
And we need it like this!
return {
props: {
postData: postData,
},
};
}
Thanks for the cool technology, my bad

This is a little difficult to troubleshoot with y'all using just screenshots. Are any of you willing to commit what changes you have to a GitHub repository so we can clone the code and help troubleshoot using the same thing you are?


Fix Todo texts

Remove unneeded todos and remove a side-steps that is no longer needed in plugins as it was a polyfill.

@matmair ping me when ready to merge

@SchrodingersGat this is ready for merge - the still existing imports are complex to resolve on existing environments.


Create page TOC if wanted

So when you have a long page, you can automatically create it, like the one in https://docs.djangoproject.com/en/1.11/topics/auth/customizing/

The simplest way would be to hook in markdown_to_html and return a Result<String, Toc> where Toc represents a structure like so:
{title, slug, children: [{title, slug, children: [..]}]

That's a bit weird semantically imo but the alternative is finding the hx tags in the rendered content to get slugs and title but that seems like a terrible idea.
By default it should get all level of headers (h1 to h6) and users can decide at which level they stop in the template themselves

@phil-opp it's in the next branch if you want to try.
I just realised I will need to send the section object along when rendering a page to allow a toc over a whole section like in https://rocket.rs/guide/

It's now working, see https://github.com/Keats/tera/commit/560ebca1e59135bb612e5f4bbf804a8ad7947a43 for an example


Suggestion: Add option for default left click of the "+" tab to "View Tag Tabs"

I think it would be a great addition to the plugin if we had the ability to simply left click that "+" tab and it go to the "View Tag Tabs" page, allowing us to find the appropriate layout quicker. Thank you for all of the work you have done with this plug in, it is wonderful.

Could you explain how it is done in the Custom menu swaps? I have been trying to figure out the correct wording but cannot seem to get it to work.

just add "view tag tabs" on its own line in the config for "custom swaps" at the top of the settings panel.

thank you very much


Bug: NULL pointer dereference because valkyrie will import Tokens with no images

Description of Problem or Question
Hello people,
I'm just playing around with valkyrie for fun using a995c2ce from development-2.2 branch as my HEAD.
I noticed that when I tried to make a scenario and I was trying to add some tokens, some tokens did not have images (in particular darkness and fire). After I tried to select those (because why not), the scenario builder crashed with a NULL pointer dereference:
NullReferenceException: Object reference not set to an instance of an object
Quest + Token..ctor(.Token questToken, .Game gameObject)(at Assets / Scripts / Quest / Quest.cs:1522)
Quest.Add(System.String name, Boolean shop)(at Assets / Scripts / Quest / Quest.cs:1063)

which is basically because:
            Texture2D newTex = ContentData.FileToTexture(game.cd.tokens[tokenName].image, texPos, texSize);

returned NULL because game.cd.tokens[tokenName].image was NULL in the case of darkness and fire.
So I'm not entirely sure what happened there, but it seems like Valkyrie failed to import the darkness and fire images?
PS: Thanks a lot for Valkyrie! A very fun project!

Please see my PR for a patch that blocks the import of tokens without images: https://github.com/NPBruce/valkyrie/pull/969
IIUC, it's basically useless to import those tokens anyway since we cant use them, and they will also trigger a NULL ptr dereference if used....
BTW, any idea what happened during the import that made it fail?

Here is how the import dialog looked like FWIW.

Hi @asn-d6,
thanks for the PR, I'll merge into the dev branch, it's good to have a bit more stability 👍
The problem you describe here is related to #966 MoM 1.7.0 - Broken image (sprites) on Windows
I've fixed it yesterday.
So if you have cloned the branch, you need to take this commit : https://github.com/NPBruce/valkyrie/commit/35842cfaf891b746ec473c8375ff795f8fb9c522
If you already have this patch, then you need to upgrade MoM version on steam.

If you feel like playing a bit more with Valkyrie code, I can suggest some more accessible change request that have been requested:
#959 Code puzzles question. Specific codes
#943 add previous/next button on events,quest etc.
Now feel free to work on whatever you want, just tell us so we are sure not to work on it at the same time :)
I'm available to help mostly through discord.

Thanks for the ticket suggestions. That's really helpful :)

Fix is merged, closing.
Thanks @asn-d6


Update imgui to 0.8, update baseview to latest rev

Hey, I'm using imgui-rs for a vst I'm working on so I went ahead and updated imgui_baseview so I could use the newest version of imgui-rs.
Figured I'd make a pull request in case this is something you want :)

Oh sorry, I just now saw this PR. Thanks!


[Rendering] Holographic materials with quadrics (spheres etc.)

Holographic materials is a term I made up for the technique of ray casting inside the fragment shader. This allows for rendering smooth curvatures with very few triangles. The reason I call it holographic is because, like a hologram, it makes flat surfaces look like 3D images.
This is not about the type of ray tracing that has started to get special hardware acceleration and makes reflections look better. This is about the simple variant of ray tracing called ray casting where only primary rays are casted.
Ray casting is typically slower than rasterization even without secondary rays. A big reason why it is slower is that each ray is casted against the whole scene while only one object at a time is considered during rasterization. Each ray is also treated independently while rasterization can more easily reuse computations for drawing multiple pixels.
Ray casting can also be slow if ray marching is being done. Ray marching traverses a volume by testing many points inside it, eg. traversing a voxel grid or sphere casting a signed distance field. This is not necessary for simpler shapes as long as there are closed form solutions available.
Spheres, cylinders and cones are examples of quadric surfaces. Ray intersections against quadric surfaces has a simple closed form solution. These shapes are also abundant in human made things. This makes them especially interesting for holographic materials.
Holographic materials is a hybrid technique that traces multiple rays against a single object (shape) at a time. gl_FragDepth is set to the hit point if the ray hits the object. discard is invoked if the ray misses. The color can be computed with PBR similar to how it is done for regular triangles. Only the pixels covered by the projection of the hull of the object will cast rays against the object. This avoids the need for for hierarchical acceleration structures and allows for reusing computations between rays.
The z-buffer is used for resolving occlusions between objects. It can also be used for avoiding to cast rays toward occluded parts of objects as long as layout (depth_less) out float gl_FragDepth; is declared in the fragment shader and utilized by the driver. Although some tricks used by graphics cards to avoid fragment shader invocations may be disabled because of the use of gl_FragDepth and discard.
UV mapping cannot be done normally because the rays are cast from the hull and can hit the object at different points depending on the view. This means that if UV-coordinates of the hull were used, the texture would glide around on the object. The UV coordinates must be computed from the hit point to remain fixed on the object. The best projection depends on the specific object so there probably needs to be some flexibility here.
There is an additional problem that arises for all quadrics except the ellipsoids. They are unbounded. The surface goes off towards infinity. This is not as bad as it sounds because the hologram is bounded by the projection of the hull. Other geometry can also occlude the unbounded regions. However, we will most likely want to add bounds to the shapes inside the holograms so that we can have capped cylinders and similar things. This can be done with additional quadrics or clipping planes.
Implementation details
Holographic materials can be rendered after regular materials and use a new pair of shaders. This allows for simpler shaders and a cleaner separation. It should be possible to share most of the PBR shading code by putting it in a separate file.
The hulls do not need to match the shapes closely. This makes it easy to reuse hull geometry. We could even let all of them be boxes for example. A single box can be instanced with unique transformations for all hulls in the scene.
A quadric surface is fully described by a 4x4 matrix, often denoted Q, which can be made symmetric or triangular without changing the shape of the surface. The surface is found where $x^TQx = 0$. The point $x$ is expressed as a homogenous column vector.
The normal of the surface is given by the gradient; $n \propto \nabla(x^TQx) \propto Qx$
The ray is parameterized by a ray origin and a direction; $x = r_o + r_dt$. The intersection can be computed by inserting into the quadric equation and solving for $t$
$$ x^TQx = 0 $$
$$ (r_o + r_dt)^TQ(r_o + r_dt) = 0 $$
$$ r_o^TQr_o + r_d^TQr_ot + r_o^TQr_dt + r_d^TQr_dt^2 = 0 $$
$$ r_o^TQr_o + (r_d^TQr_o + r_o^TQr_d)t + r_d^TQr_dt^2 = 0 $$
We can now use the quadratic formula to get the two solutions.
Note that the four vectors $r_o, r_d, Qr_o, Qr_d$ can be computed in the vertex shader and will behave nicely when interpolated. This is the trick that avoids the matrix multiplications in the fragment shader. They can even be used for computing the normal, thereby completely avoiding the need for $Q$ in the fragment shader.
The surface is most conveniently expressed in local space but the transformation between local and global space can be baked into the matrix Q before the vertex shader is run.
The UV mapping can be done by a perspective transform that can be stored per instance alongside the material properties to start with. Other mappings should be relatively easy to add as we need them.
Bounds can be enforced by testing the hit point against clipping planes or other quadrics. A single clipping plane can be represented by putting the plane equation in the last column (or row) of a quadric matrix $Q$. Two clipping planes can actually fit into a single quadric, eg $y^2 \le 1$.
We only need two vectors per additional quadric because we can use the same $r_o, r_d$ and only add additional vectors for $Q_ir_o, Q_ir_d$. Alternatively, the quadric matrices can be stored per instance and not passed via the vertex shader at all.

Compared to https://iquilezles.org/articles/distfunctions/, quadrics can do many but not all of the primitives.
Sphere - yes ✅

Box - yes (but use triangles instead) ✅
A box can be represented as the three quadrics (double planes) with with two quadric bounds each but it would probably be better to just use triangles.
Round Box - yes ✅
Several quadrics are necessary but the they will get the job done.
4 spheres for the corners, 6 cylinders for the edges and probably best to use triangles for the flat surfaces.
Box Frame - yes (but use triangles instead) ✅
Lots of flat quadrics but better to use triangles.
Torus - no ❌
A torus is a fourth order surface, confusingly called a quartic. I would like to support this but it would need a different solver for the ray intersection.
Capped Torus -  no ❌
Same as the torus. The capped ends could be done with spheres though.
Link - no ❌
This is two cylinders and two cut torus's.
Infinite Cylinder - yes ✅
Cone - yes ✅
Infinite Cone - yes ✅
Plane - yes ✅
Hexagonal Prism - yes (but use triangles instead) ✅
Could be done with quadrics with multiple bounds but better to use triangles.
Triangular Prism -  yes (but use triangles instead) ✅
Capsule - yes ✅
A capsule is two spheres and a cylinder.
Capped Cylinder - yes ✅
This is a sphere and a cylinder.
Rounded Cylinder - no ❌
This is a cylinder and a torus with a lid. Something similar can be done with a cylinder and a flat ellipsoid though.
Capped Cone - yes ✅
Solid Angle - yes ✅
This is a cone and a cut sphere.
Cut Sphere - yes ✅
Cut Hollow Sphere - yes ✅
This is two spheres and a plane with two quadric bounds.
Death Star - yes ✅
This is two spheres with bounds.
Round cone - yes ✅
This is a bounded cone and two spheres.
Ellipsoid - yes ✅
Rhombus - yes (but use triangles instead) ✅
float sdRhombus(vec3 p, float la, float lb, float h, float ra)
{
p = abs(p);
vec2 b = vec2(la,lb);
float f = clamp( (ndot(b,b-2.0p.xz))/dot(b,b), -1.0, 1.0 );
vec2 q = vec2(length(p.xz-0.5bvec2(1.0-f,1.0+f))sign(p.xb.y+p.zb.x-b.x*b.y)-ra, p.y-h);
return min(max(q.x,q.y),0.0) + length(max(q,0.0));
}
Octahedron - exact   (https://www.shadertoy.com/view/wsSGDG)
float sdOctahedron( vec3 p, float s)
{
p = abs(p);
float m = p.x+p.y+p.z-s;
vec3 q;
if( 3.0p.x < m ) q = p.xyz;
else if( 3.0p.y < m ) q = p.yzx;
else if( 3.0p.z < m ) q = p.zxy;
else return m0.57735027;
float k = clamp(0.5*(q.z-q.y+s),0.0,s);
return length(vec3(q.x,q.y-s+k,q.z-k));
}
Octahedron - bound (not exact)
float sdOctahedron( vec3 p, float s)
{
p = abs(p);
return (p.x+p.y+p.z-s)*0.57735027;
}
Pyramid - exact   (https://www.shadertoy.com/view/Ws3SDl)
float sdPyramid( vec3 p, float h)
{
float m2 = h*h + 0.25;
p.xz = abs(p.xz);
p.xz = (p.z>p.x) ? p.zx : p.xz;
p.xz -= 0.5;
vec3 q = vec3( p.z, hp.y - 0.5p.x, hp.x + 0.5p.y);
float s = max(-q.x,0.0);
float t = clamp( (q.y-0.5*p.z)/(m2+0.25), 0.0, 1.0 );
float a = m2*(q.x+s)(q.x+s) + q.yq.y;
float b = m2*(q.x+0.5t)(q.x+0.5t) + (q.y-m2t)(q.y-m2t);
float d2 = min(q.y,-q.xm2-q.y0.5) > 0.0 ? 0.0 : min(a,b);
return sqrt( (d2+q.z*q.z)/m2 ) * sign(max(q.z,-p.y));
}
Triangle - exact   (https://www.shadertoy.com/view/4sXXRN)
float udTriangle( vec3 p, vec3 a, vec3 b, vec3 c )
{
vec3 ba = b - a; vec3 pa = p - a;
vec3 cb = c - b; vec3 pb = p - b;
vec3 ac = a - c; vec3 pc = p - c;
vec3 nor = cross( ba, ac );
return sqrt(
(sign(dot(cross(ba,nor),pa)) +
sign(dot(cross(cb,nor),pb)) +
sign(dot(cross(ac,nor),pc))<2.0)
?
min( min(
dot2(baclamp(dot(ba,pa)/dot2(ba),0.0,1.0)-pa),
dot2(cbclamp(dot(cb,pb)/dot2(cb),0.0,1.0)-pb) ),
dot2(ac*clamp(dot(ac,pc)/dot2(ac),0.0,1.0)-pc) )
:
dot(nor,pa)*dot(nor,pa)/dot2(nor) );
}
Quad - exact   (https://www.shadertoy.com/view/Md2BWW)
float udQuad( vec3 p, vec3 a, vec3 b, vec3 c, vec3 d )
{
vec3 ba = b - a; vec3 pa = p - a;
vec3 cb = c - b; vec3 pb = p - b;
vec3 dc = d - c; vec3 pc = p - c;
vec3 ad = a - d; vec3 pd = p - d;
vec3 nor = cross( ba, ad );
return sqrt(
(sign(dot(cross(ba,nor),pa)) +
sign(dot(cross(cb,nor),pb)) +
sign(dot(cross(dc,nor),pc)) +
sign(dot(cross(ad,nor),pd))<3.0)
?
min( min( min(
dot2(baclamp(dot(ba,pa)/dot2(ba),0.0,1.0)-pa),
dot2(cbclamp(dot(cb,pb)/dot2(cb),0.0,1.0)-pb) ),
dot2(dcclamp(dot(dc,pc)/dot2(dc),0.0,1.0)-pc) ),
dot2(adclamp(dot(ad,pd)/dot2(ad),0.0,1.0)-pd) )
:
dot(nor,pa)*dot(nor,pa)/dot2(nor) );
}

There is a tasty list of analytical solutions of raytraced shapes over here https://iquilezles.org/articles/intersectors/ that could be useful!

@rasmusgo As discussed in dearest Stockholm, 🇸🇪 , I think that the best way to approach this is as a "non core feature". I think that there's definitely some interesting research to be done in finding alternatives to rasterised triangle rendering, but I do think it's out of scope for the Hotham project.
However, I think this would be a really good case for proving whether Hotham can easily support external render passes. We've done a proof of concept of this with The Station, thanks to @Ralith 's help, but it'd be good to see how much further we can push this.
If you're happy to, I think the best approach would be for you to create your own crate (open source or no!) and use Hotham as an external dependency. I think that would (a) give you the freedom to experiment with this nifty rendering idea without having to go through the bureaucracy of PRs, etc and (b) would be a really good test to see how flexible Hotham actually is.


Add generators

Here is a setup to add a small generator.
Maybe the naming is a little bit redundant but it's to keep in mind than the form object will be in forms folder.
If you merge the PR, you can also add the information in the readme.

Maybe you didn't changed your test framework ?
You have to do something like :
# config/application.rb

config.generators do |generate|
  generate.test_framework :rspec
end

Most of the time, I go for this config (for information) :
# config/application.rb

config.generators do |generate|
  generate.assets false
  generate.helper false
  generate.test_framework :rspec,
                                              :fixture_replacement: :factory_bot,
                                              :helper_specs: false,
                                              :view_specs: false,
                                              :routing_specs: false
  generate.fixture_replacement :factory_bot, dir: 'spec/factories'
end

You can have a shorter experience to generate files via rails g form foo_bar, I change the files to do so.

Thanks a lot ❤
Released v0.3.0 with this change : https://github.com/Intrepidd/hyperactiveform/releases/tag/v0.3.0


MAISTRA-455 Fix RBAC so Galley can create the ValidatingWebhookConfig

Wait, don't merge this just yet. Found another related problem.

Nevermind, the other issue should be filed & fixed separately.


How do I Get Sources with a branch name instead of via sha?

Agent version and platform
https://github.com/NullVoxPopuli/vsts-agent-with-aws-ecr/blob/master/Dockerfile
FROM microsoft/vsts-agent:ubuntu-16.04-tfs-2017-docker-17.03.0-ce-standard

VSTS type and version
VisualStudio.com
https://developertown.visualstudio.com
What's not working?
I'd like to be able to specify Get Sources to checkout code via branch name such that
export CURRENT_BRANCH=$(git symbolic-ref HEAD | sed 's!refs\/heads\/!!')
sets CURRENT_BRANCH to the branch name.
Currently, that command outputs: fatal: ref HEAD is not a symbolic ref
This is used in my build/deploy script (which has different behavior based on different branch matching)
(docker tagging and pushing, git tagging, etc)
Here are the logs for Get Sources:
2017-05-15T12:53:57.0534510Z ##[section]Starting: Get Sources
2017-05-15T12:53:57.5810050Z Syncing repository: team-web (Git)
2017-05-15T12:53:57.6075040Z ##[command]git version
2017-05-15T12:53:57.6757280Z ##[command]git config --get remote.origin.url
2017-05-15T12:53:57.7000650Z ##[command]git clean -fdx
2017-05-15T12:53:57.7242670Z Removing backend/build/
2017-05-15T12:53:57.7255860Z Removing backend/kube-config
2017-05-15T12:53:57.7271880Z Removing frontend/coverage/
2017-05-15T12:53:57.7292160Z Removing frontend/dist/
2017-05-15T12:53:57.8245250Z ##[command]git reset --hard HEAD
2017-05-15T12:53:57.8499190Z HEAD is now at f05fa94 update date parsing format
2017-05-15T12:53:57.9439980Z ##[command]git config gc.auto 0
2017-05-15T12:53:57.9589590Z ##[command]git config --get-all<EMAIL_ADDRESS>2017-05-15T12:53:57.9726190Z ##[command]git config --get-all http.proxy
2017-05-15T12:53:57.9935240Z ##[command]git remote set-url origin<EMAIL_ADDRESS>2017-05-15T12:53:58.1047490Z ##[command]git remote set-url --push origin<EMAIL_ADDRESS>2017-05-15T12:53:58.1224760Z ##[command]git fetch --tags --prune --progress origin
2017-05-15T12:53:58.5400610Z ##[command]git checkout --progress --force f05fa94bc4fa23382213c42ef96ecff4e700f7bd
2017-05-15T12:53:58.5552350Z HEAD is now at f05fa94... update date parsing format
2017-05-15T12:53:58.6568060Z ##[command]git remote set-url origin<EMAIL_ADDRESS>2017-05-15T12:53:58.6685000Z ##[command]git remote set-url --push origin<EMAIL_ADDRESS>2017-05-15T12:53:58.6857110Z ##[section]Finishing: Get Sources

I've read this:
https://github.com/GitTools/GitVersion/issues/553#issuecomment-129243683
But I'd prefer not to add VSTS specific variables into my build/release scripts.
A work around I could do would be to have CURRENT_BRANCH set in a Build Configuration Variable, and then just have my script do something like:
defaultCurrentBranch=$(git symbolic-ref HEAD | sed 's!refs\/heads\/!!')
CURRENT_BRANCH=${CURRENT_BRANCH:-$defaultCurrentBranch}

@NullVoxPopuli is this a agent issue or docker image issue?

I think an agent issue
On Tue, May 16, 2017, 12:23 AM Ting<EMAIL_ADDRESS>wrote:

@NullVoxPopuli https://github.com/nullvoxpopuli is this a agent issue
or docker image issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vsts-agent/issues/971#issuecomment-301671766,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAMJahJg183ckAHBrPlVhNwhiSlXKPnqks5r6SSpgaJpZM4NbGs2
.

@NullVoxPopuli it's the VSTS service tell agent to checkout which commit, even you feed in a branch name.
Since VSTS need calculate changes between builds, VSTS will query you git repository to get the commit hash for the ref you want to build. the agent just follow what server tells it to do.

ah ok, so this is a VSOnline behavior?

@NullVoxPopuli yes.
in the job message agent get.
      "build.sourceVersion": "0d3d21a150cea97f20863fcff104d03bfec50339",
      "build.sourceBranch": "refs/heads/master",
      "build.sourceBranchName": "master",

these info in provide by server.

ok cool. Well, because I have a reasonable work around, I'll close this issue.
Thanks for explaining!

@NullVoxPopuli I have the same issue. Can you share your "reasonable" workaround? Thanks!!!


4.9 is now EOL

Link<EMAIL_ADDRESS>

Follow up from https://github.com/ClangBuiltLinux/ClangBuiltLinux.github.io/pull/47, we can probably stop the Android 4.9 builds now, too.


Search for an ip address on the ips screen and address address to logs

What
Describe the change
Extend search functionality to allow searches using the IP address and to add address information to the IP logs
Why
Describe why the change was necessary
The first page of the admin tool (/IPS) allows users to search by location and postcode but not by IP address.
If admins search for a user who is having problems, they will see the IP address they are connecting to but won't know what location the IP address is attributed to.
Link to Jira card (if applicable):
https://technologyprogramme.atlassian.net/browse/GW-270

I think the commits could be cleaned up a bit, the merges can be removed and a couple look like they could be squashed in to others.


[IMPROVE] Remove update-remind-later-dialog

@RocketChat/electron

Closes #1075

Removes the "Remind me" pop up dialog (marked red):

 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.

Should I remove the language sources aswell?

@DanielHabenicht Yes, please, wipe out the strings Update_remind and Update_remind_message.

@tassoevan Removed them. Whats up with the build?

@DanielHabenicht Expired MacOS certificates 😞We're updating them ASAP.

Ok, no worries. Just wanted to ensure that it had nothing to do with my changes.


Remove the hero link variant

Fixes #338.
Removes the hero link variant. Also adds a heading and paragraph of text to the sample, demonstrating how links can be added to any text.

looks wonderful!

Looks good, approved


Modified timestamp of Catalog is set to current time.

Related to #42. According to the documentation, the modified timestamp of a Catalog should be equal to the Latest Resource#LastPublished. Currently it seems to take the current time and updates on every reload.

Fixed

Confirmed fixed in v1.2


Refactor switchAccount action and handle clear NFT state in extraReducer case

Patrick fixed a bug that required splitting switchAccount() into two thunks, so you'll need to resolve a conflict here with switchAccount(), in that your new copy of that thunk will need to dispatch clearAccountState() rather than explicitly dispatching staking.clearState() and tokens.clearState().
Maybe we can remove those two next and then delete the entire clearAccountState() thunk? :D that'd be awesome :P

It's rebased now. Also added stakingSlice and tokensSlice, for now, they will handle only switchAccount in extraReducers, but refactor whole tokens and staking reducer into slice it's a much bigger change, so I guess it needs to wait for his turn.
Also, I removed clearAccountState from switchAccount thunk, but it's still a separate thing. because we use it in few places - but eventually, we should refactor these places where we using clearAccountState into asyncThinks and we will be able to remove clearAccountState entirely.

@MaximusHaximus Also question, my proposition would be to use /redux/slices instead of /slices - I think /redux/slices is a better idea because we will keep all stuff related to redux into single /redux folder. Are you ok with that?

@MaximusHaximus Also question, my proposition would be to use /redux/slices instead of /slices - I think /redux/slices is a better idea because we will keep all stuff related to redux into single /redux folder. Are you ok with that?

:+1: absolutely, go for it :) <3

@MaximusHaximus It's ready.

@MaximusHaximus Done.


New custom layout/theme based on Bootstrap

This merge replaces the previous imported theme with a simple, yet stylish custom theme based on the Bootstrap CSS framework. Mobile and small-screen device compatibility, as well as a nice navigation bar comes courtesy of Bootstrap.
Note: I haven't tested this on small screens yet and the merge does not yet touch any content. A small re-shuffle of the individual tabs and content pages is left for another PR.

Merging...


fix(binance): ajust order size format

As discussed at https://github.com/rodrigo-brito/ninjabot/pull/170#issuecomment-1182765438
Binace provides a function to format order sizer with price filters
What have you changed and why?
Replace the format function with binance commons function
Ref https://github.com/rodrigo-brito/ninjabot/pull/170

Codecov Report

Merging #171 (c0fa83b) into main (dbae19a) will increase coverage by 0.27%.
The diff coverage is 40.00%.

@@            Coverage Diff             @@
##             main     #171      +/-   ##
==========================================
+ Coverage   48.43%   48.71%   +0.27%
==========================================
  Files          15       15
  Lines        2335     2332       -3
==========================================
+ Hits         1131     1136       +5
+ Misses       1140     1132       -8
  Partials       64       64

Impacted Files
Coverage Δ

exchange/csvfeed.go
63.97% <0.00%> (ø)

model/model.go
65.33% <ø> (ø)

exchange/binance.go
1.10% <27.27%> (+1.10%)
:arrow_up:

exchange/paperwallet.go
66.04% <80.00%> (+0.15%)
:arrow_up:

download/download.go
65.93% <100.00%> (ø)

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 dbae19a...c0fa83b. Read the comment docs.


Fix the build on Ubuntu 24.04.

Make sure to #include  where needed.
This should fix the build on Ubuntu 24.04, like https://build.ros2.org/view/Rbin_uN64/job/Rbin_uN64__odri_master_board_sdk__ubuntu_noble_amd64__binary/13/console

Thanks !


Results from zombie managers

Catching the case of results being received from a manager that is marked dead due to missing heartbeats.
In the new mode, we will ignore results from a zombie manager. This is done since the assumption is that at the point where a manager is called dead, we send back notifications of the tasks being lost. Those tasks will then be relaunched. We should not send conflicting results back to the interchange.

I think it would be nicer to not make a broken manager data structure in response to surprisingly ordered message processing, rather than catch weird exceptions that happen later due to having created a broken internal state. (and I say that as the person that prototyped the catch/ignore approach used in this PR)

(if the manager is gone, don't create a new manager structure for it and then get upset that the new structure is broken)

@benclifford  I've updated this PR so that we do not add a register managers unless a registration message is received. We'd receive the result messages, but ignore it.


cFS-Caelum Review, CFS-40: ES, Resource ID, core api and private, and build system

Description
This is a "bookkeeping" Pull Request meant for the cFS-Caelum Review code inspection (full-scale code review).
This PR is solely focused on "CFS-40". For more info see this readme
The Included files are
https://github.com/astrogeco/cFE/blob/c79d66969673a37900d468203b161785bd19874f/.gitignore#L11-L49
# Build Files
!cmake/**/target_config.*
!cmake/target/CMAKELists.txt
!cmake/arch_build.cmake
!cmake/cfe_generated_file.h.in
!cmake/check_header.c.in
!cmake/generate_build_env.cmake
!cmake/generate_git_module_version.cmake
!cmake/global_functions.cmake
!cmake/mission_build.cmake
!cmake/mission_defaults.cmake
!/CMakeLists.txt

# cFE-Core
!modules/core_api/fsw/inc/cfe.h
!modules/core_api/fsw/inc/cfe_endian.h
!modules/core_api/fsw/inc/cfe_error.h
!modules/core_api/fsw/inc/cfe_version.h

# ES
!modules/core_api/fsw/inc/cfe_es*
!modules/core_private/fsw/inc/cfe_es*

!modules/es/fsw/**
!modules/es/CMakeLists.txt

# ResourceID
!modules/core_api/fsw/inc/cfe_resourceid*
!modules/core_private/fsw/inc/cfe_core_resourceid_basevalues.h

!modules/resourceid/fsw/src/*
!modules/resourceid/option_inc/*
!modules/resourceid/CMakeLists.txt
!modules/resourceid/mission_build.cmake

Objectives

This review starts on 2021-04-05 and ends on 2021-04-09

Dispositions of findings is on 2021-04-12

Reviewers only need to review source files, header files & build files.

Use .ppt, .pdf, .txt & .xlsx files for background information about the code.

See the Attachments section for Peer Review Data Package.

See also "The Power of 10" rules for safety-critical code. https://en.wikipedia.org/wiki/The_Power_of_10:_Rules_for_Developing_Safety-Critical_Code#:~:text=The Power of 10 Rules,to review or statically analyze

NOTE: Don't spend too much time over coding standard violations. The Static Code Analysis tool will enforce the coding standards. This code is developed by GSFC, so GSFC coding standards will be enforced for this code base.

Notes
Note a few already existing issues (no need to individually comment on occurrences):
Doxygen event documentation doesn't match code: https://github.com/nasa/cFE/issues/508
End of function comments out of date (generalized/paraphrased version of https://github.com/nasa/cFE/issues/275)
Update code/unit tests to use CFE_Status_t: https://github.com/nasa/cFE/issues/921
If there's anything else that is observed as a repeated pattern, feel free to document as a general commen
There are several places that would trigger warnings with some common compilers/warning options. It would be nice to follow #10 rule in "The Power of 10".
Quick summary/references for currently enforced settings on the FSW
Compiler options (note -Wall and -Werror) - https://github.com/nasa/cFE/blob/0850b19a09417dd7730e9c1b44e0f5687ef0f721/cmake/sample_defs/arch_build_custom.cmake#L28-L37
cppcheck - https://github.com/nasa/cFE/blob/0850b19a09417dd7730e9c1b44e0f5687ef0f721/.github/workflows/run_fsw_cppcheck.sh#L3
CodeQL - https://github.com/nasa/cFE/blob/0850b19a09417dd7730e9c1b44e0f5687ef0f721/.github/workflows/codeql-build.yml#L35-L39
CodeSonar - currently using default set for cFE, extending to JPL and MISRA is future work
For CodeQL and CodeSonar we don't eliminate all warnings, but we do analyze and disposition them all (plan to report dispositions as part of certification package)
This approach is compliant with the latest GSFC 582 standard (that is still going through review). Happy to discuss any additional settings that you have concerns about.

This round of code review has been completed, for any further issues/comments please open a new issue.

Sorry for accidentally mentioning this pull request directly.


Add feature flag support using launchdarkly

@newmskywalker can you add me to LD when you get a chance please.