Sprint 3 - FlavorFusion

flavorfusion
a platform for coming up with ingredient combos, sharing them, and then rating them.
this project combines game aspects, social media features, and not gambling to maximize dopamine and therefore create a "better" user experience.
table of contents

routing

home page
slot machine
search

drawings
ingredients

routing
home page
this is the main page and is where the social media aspect comes in.
components:

bento grid of other people's combos

each have the username, the title created by the user
have a list of ingredients w/ a description
and have a rating + 3 comments at the bottom

a right sidebar for your most recent combos

less detailed than fyp,
contains just title + rating
maybe contain new/unread comments?

slot machine
this is where users roll to come up with combos. each user gets 3 rolls per hour (undecided), and if they choose the reroll they cannot go back to their preview combo.
components:

slot machine with ingredient emojis

text underneath with number of rerolls
a button to roll/reroll

a submit button that creates the form

has the title and description fields

search
allows you to search for names of profiles & combos
components:

a search bar

drawings
links to drawings. uses the shadcn/ui slate colors (for now)
main (fyp)
ingredients
these are a work in progress. they may be swapped. right now, there are 2925 possible combinations.

Olive oil
Garlic
Onion
Tomato
Basil
Oregano
Red pepper flakes
Chicken breast
Ground beef
Salmon
Bell pepper
Spinach
Carrot
Broccoli
Zucchini
Rice
Quinoa
Black beans
Chickpeas
Parmesan cheese
Feta cheese
Yogurt
Lemon
Honey
Soy sauce

(Above is Ideation)
Pair Programming
The links and the design of the home dock, pair programming allowed for some teammates to design how it looked on the frontend and others to figure out how to connect the data to be linked to the backend and the apis. For example, for the frontend, one of our teammates created sample data for a post, while the other designed it. This gave insight about how the post would look exactly and how it would demonstrate sociability between users.
It also allowed for us to cross check the validility of the code and to check how the backend is receiving requests. From the lessons and the tech talks as well, we were able to gather the code provided to tweak it for our own page. For example, this piece of html was put together by all teammates.
`

`


Add author name

the authors name of each projects can be added to the projects list on a column at the right side of  the directory column

Thank you for your suggestion!!
This  would provide clear attribution for each project and could be a valuable addition to the repository.
I'll look into implementing this feature and will keep you updated on the progress.
If you have any other suggestions or feedback, please feel free to share


It would be nice being able to comment on games

like in scratch but since not everyone knows what it is i will explain it
you have the game then you scroll down and you have the comment section
like youtube and pretty much every social media

can you please add this?

ok


(Un)registering peer in genesis

We should consider what happens when registering/unregistering a peer in genesis. Since we blindly take commit_topology from genesis block after execution of the block this would overwrite any changes made to topology by the execution of genesis block

we can eagerly set the world.trusted_peers before calling ValidBlock::validate and then return it to the previous value if both ValidBlock::validate and CommittedBlock::commit failed


[Feat] Implement Static fallback via the Maps Static API

Target Use Case
Minimize the user experience impact of the library by improving paint time and responsiveness metrics.
Proposal
Data from HTTP Archive shows that Google Maps has the longest download times during page rendering when compared to the other most popular third-party libraries on the web:

Median download time during page rendering for the top 10 most popular third parties (calculated using HTTP Archive and Lighthouse’s wastedMs attribute via the render blocking audit)

Query

This happens because the Maps JavaScript API fetches ~240 kB of JavaScript across multiple scripts. In this library, we can circumvent this by delaying the instantiation of these scripts until the user engages with the map. While waiting for the user’s interaction, we can fetch and display an image via the Maps Static API passing in the same set of required props (center and zoom).

Optimized prototype of react-google-maps that displays an image and defers JS until user interaction)

Link

To implement this feature, the <APIProvider> component of the library can keep track of whether the map has been selected as part of the context information it provides. We can use this to conditionally render either the “real” map versus a static version of it:
// src/components/map/index.tsx

import { StaticMap } from "./static-map";
// ...

return (
  <div onClick={() => context.setMapSelected(true)}>
    >
    {context.mapSelected ? (
      // Load normal map
    ) : (
      <StaticMap {...props} /> // Load Static Map if map hasn't been clicked
    )}
  </div>
);

You can see all the changes in this prototype in this commit. Note that this is just a prototype, and the real implementation would offer some sort of UI that makes it clear that the map needs to be clicked in order to be interacted with.
Performance Tests
Comparing the current version of react-google-maps with the prototype above on the same site shows a significant difference in rendering times:

When the user interacts with the map, the same scripts are still fetched and executed. But by deferring them until they’re needed, the browser's main thread is freed up to handle other tasks while the document continues to load. This will improve both Largest Contentful Paint and Interaction to Next Paint.
The chart and table below present a comparison of these two metrics when applying this optimization to a representative Next.js website: https://news-site-next-static.netlify.app/.

| Largest Contentful Paint | Total Blocking Time*
-- | -- | --
News Site Next | 3.38s | 0.25s
News Site Next with react-google-maps | 7.12s (+3.74s) | 0.97s  (+0.72s)
News Site Next with react-google-maps (Optimized) | 4.22s (+0.84s) | 0.44s (+0.19s)
Test conditions: WebPageTest - Emulated 4G Connection, Chrome, Moto G4 (Median Results - 3 Runs)
*Total Blocking Time is used as a lab proxy here for Interaction to Next Paint

Hi @housseindjirdeh,
wow 😍 what a detailed and thought out issue and proposal!
I could totally see to have this as an option integrated somehow. @usefulthink will be back in a few weeks and I'm sure he will take a good look at this.
One thing that comes to mind immediately when it dealing with the Static Maps API are the size limitations. 640x640 which can be scaled up to 1280x1280 (https://developers.google.com/maps/documentation/maps-static/start#Imagesizes)
But I assume the target use case would not be a big fullscreen map anyway.

Thanks @mrMetalWood, I appreciate the kind words. Looking forward to hearing what @usefulthink thinks when they get the chance to take a look.

One thing that comes to mind immediately when it dealing with the Static Maps API are the size limitations. 640x640 which can be scaled up to 1280x1280 (https://developers.google.com/maps/documentation/maps-static/start#Imagesizes)

Yeah absolutely, this is a risk that we may have to be aware of. My assumption is that most Maps don't exceed 1280x1280 on the web but we may want to handle cases where they are (e.g. clear docs, console warning?)

Some other concerns we'll have to think about:

Billing: The Maps Static and JavaScript APIs both use separate pay-as-you-go pricing models (0.002 and 0.007 USD per each map respectively). I wish I had data to validate this, but I'm hoping that this would help lower costs with the assumption that the percentage of users that generally interact with a map is lower than the anticipated cost increase. Regardless, we'll likely have to mention this in the documentation somewhere and provide users with a way to opt-out and only load a dynamic map. Something like:
const App = () => (
  <APIProvider apiKey={process.env.GOOGLE_MAPS_API_KEY}>
    <Map
      // ...
      dynamicOnly // Optional prop to only load the dynamic map
    />
  </APIProvider>
);
``

Slight differences in rendered image: Even with the same coordinates and zoom levels applied, the rendered image from the Static and JavaScript APIs do not match exactly.

This may not be a significant concern but we should still try to minimize the discrepancy between the two rendered images as much as possible.

Awesome work, @housseindjirdeh – thanks for the detailed analysis and suggestions, I like the ideas a lot.
As for the cost, A quick calculation shows that having the static initial view would be cheaper when less than ~71% of users activate the dynamic map (solving r * (2+7) + (1-r) * 2 = 7  for the ratio of dynamic map loads r gives r=0.714..., r * (2+7) being the cost for dynamic + static map shown, and (1-r) * 2 would be the static map only in the remaining cases).
The problem I'm seeing with this: A simple implementation would only cover rendering of the basic map, and nothing on top of it. This would also mean the dynamic map would be required most of the time just for rendering what is supposed to be rendered (markers etc). The only exception here would be cases where the map doesn't even enter the viewport and/or isn't relevant to the user.
We could possibly implement support for markers, polygons and polylines in a limited way, although I'm not yet sure how that should look API wise. Supporting the marker components we already have would be difficult, since there's only a limited feature-set supported by the static maps API (the Marker component might partially work, the AdvancedMarker probably won't).
With markers etc supported, we could actually reach a point where a lot of simpler use-cases can be supported using the static map as well – making the static preview financially viable as a default.
Then there's the point of the maximum size you also mentioned, which limits static maps to 640x640px CSS size unless a special project specific agreement is made that could allow up to 2048px squared. For most mobile uses this should be more than enough, and probably also where the performance impact would be the most significant. Maybe the Maps Platform Team at Google has some data on real-world usage of maps and some numbers on usual sizes. That would tell us in how many instances a static fallback would actually work. I'll ask them when I get the next opportunity.
To summarize, here's what I think would be some good steps to move this forward:

implement the StaticMap component that also supports SSR in next.js and other frameworks (i.e. statically renders as an image tag with signed url)

implement an example demonstrating switching from a static to a dynamic map (essentially what you've already done, but in a way that doesn't tie the switching directly into the Map component). This would also be helpful for developers seeking to avoid activating the map when it's not actually needed, or want to provide their own fallback content to show before the map is loaded.

from that example, we can extract a hook or component to encapsulate the logic for switching between static preview and dynamic map, to make it as easy as possible for users to add this behavior to their map. <MapWithStaticFallback> is a terrible name to suggest, but you get the idea.

implement a StaticMapMarker component (or figure out a way to integrate it with existing marker components, but I think we can figure out a way to reconcile this with the Marker component later). Just as the StaticMap, this has to work in SSR environments as well.

I think when we have all those things in place we can revisit the question of integrating it into the Map component itself and possibly making it the default behavior.
What do you think, would you be able to take on some of these tasks or maybe even take the lead for this?

Thanks for taking a look @usefulthink. Really appreciate the detailed feedback.

We could possibly implement support for markers, polygons and polylines in a limited way,

Agreed. I would definitely want to support markers and additional features as much as possible but also understand that we may not cover 100% of functionality. Ideally we would be able to get close enough and then be clear in the documentation that certain things may not be supported as expected.

To summarize, here's what I think would be some good steps to move this forward:

All those steps sound good to me. I would be more than happy to take the lead on this and I'll reach out whenever I have questions. I can start by submitting a base level StaticMap component and we can go from there :)


Allow right-click to run as admin

Right now there is no way to launch an application as admin (correct me if I'm wrong, but I couldn't find it). Maybe adding support for right-clicking on the list would be a good idea? Additional options might include properties and open in explorer, not sure how easy it would be to add those, but run as admin should be possible, I think.

what if simply go to \AppData\Local\hain\app-{version} in explorer then right click on hain.exe?
I've seen run as admin option in the right click menu poped up.

Sorry, I didn't fully explain what I mean. I mean that if I opened hain and typed "Visual Studio", for example, it shows me the list of matching application that I can click to launch. However, if I would like to launch Visual Studio as an admin, I don't think I can do that directly from hain right now.

@ilyavolodin I fully understand your opinion.
I think it's needed feature.
Currently, Electron doesn't provide an API for running other apps as admin.
So, Another native module should be implemented for it.
I think it will take a time.

@appetizermonster https://www.npmjs.com/package/node-windows?

Nice find on that package. I'll see about possibly working on this myself.


[spike] Research minimum amount of protocol state needed to reinitialize after down-time

research if we need the entire graph. Want to understand why are are not keeping consensus state data.   What is the minimum amount of protocol state needed for a validator to be able to resume participation after a restart for (highway).
what data is needed to reinitialize, how big is it and what is needed to store it?
Protocol state for Zug: echos and votes sent in different rounds (multiple rounds in each era).   Protection against "amazon" down-time.   Only kept in memory.  Need to keep some on disk in order to persist through node down-time.
Will need implementation to store info to disk for both Highway and Zug.

A summary of the findings: https://hackmd.io/6RSUz7vSSki9tZFicDZSdw

A section about Zug should be added before this is reviewed.

Simply stated, the protocol state needs to be written to disk.

@fizyk20 - Ed thinks you did this. Can you confirm please?

@devendran-m This has been done for Highway, but never quite finished for Zug. I think we did decide to close this issue at some point, though (but I'm not 100% sure).

As per the discussion in the L1 Daily on 17-Sep-24;

Check if the Highway mechanism is implemented and the scope required to finish for Zug.


update analysis with new local field

It seems that the implementation is planned as my description below.
Please review and confirm.
I think it is important to add in this PR at least some basic unit tests that relate to these aspects and checks them.
SG example:

members: n1, n2, n3
targets: t1, t2, t3

n1 in cidr1 only
n2 in cidr2 only
n3 in cidr1 union cidr2

t1 in cidr1' only
t2 in cidr2' only
t3 in both cidr1' and cidr2'

x,y,z: disjoint partition of cidr1,cidr2, such that x only in cidr1, y only in cidr2, z in intersection cidr1 and cidr2

egress rules:
- local: cidr1, remote: cidr1' , conns: c1
- local: cidr2, remote: cidr2', conns: c2

before local - one connectivity result:
 dst x': c1
 dst y': c2
 dst z': c1 union c2

after local- connectivity result per disjoint local :

src z:
 dst x': c1
 dst y': c2
 dst z': c1 union c2

src y:
  dst cidr2': c2

src x:
  dst cidr1': c1

 AllowedConnectivity(n1, t1) - >  c1
 AllowedConnectivity(n1, t2) - >  none
 AllowedConnectivity(n1, t3) - >  c1

 AllowedConnectivity(n2, t1) - >  none
 AllowedConnectivity(n2, t2) - >  c2
 AllowedConnectivity(n2, t3) - >  c2

 AllowedConnectivity(n3, t1) - >  c1
 AllowedConnectivity(n3, t2) - >  c2
 AllowedConnectivity(n3, t3) - >  c1 union c2

Also, note that multiple disjoint locals entries could be having same connectivity results, so better caching the AnalyzeSGRules computations by set of rules being considered to this computation (to avoid re-computing identical results for different local key entries).

Updated example description:
SG example:

cidr1 contained in cidr2
cidr1' contained in cidr2'

x,y,z: disjoint partition of cidr1,cidr2, such that x only in cidr2, y only in cidr2, z in intersection cidr1 and cidr2 ,: x < z < y

members: n1, n2, n3
targets: t1, t2, t3

n1 in x
n2 in y
n3 in z

t1 in x'
t2 in y'
t3 in z'

egress rules:
- local: cidr1, remote: cidr1' , conns: c1
- local: cidr2, remote: cidr2', conns: c2

before local - one connectivity result:
 dst x': c2
 dst z': c1 union c2
 dst y': c2

after local- connectivity result per disjoint local :

src x:
  dst cidr2': c2

src z:
 dst x': c2
 dst z': c1 union c2
 dst y': c2

src y:
  dst cidr2': c2

 AllowedConnectivity(n1, t1) - >  c2
 AllowedConnectivity(n1, t2) - >  c2
 AllowedConnectivity(n1, t3) - >  c2

 AllowedConnectivity(n2, t1) - >  c2
 AllowedConnectivity(n2, t2) - >  c2
 AllowedConnectivity(n2, t3) - >  c2

 AllowedConnectivity(n3, t1) - >  c2
 AllowedConnectivity(n3, t2) - >  c2
 AllowedConnectivity(n3, t3) - >  c1 union c2


[Bug]  test_zephyr_aot::test_tflite failure

https://ci.tlcpack.ai/blue/organizations/jenkins/tvm/detail/PR-9873/3/pipeline/
tests/micro/zephyr/test_zephyr_aot.py::test_tflite[qemu_x86] is failing with
make[3]: zephyr/CMakeFiles/run.dir/build.make: No such file or directory
make[3]: *** No rule to make target 'zephyr/CMakeFiles/run.dir/build.make'.  Stop.

closing since we haven't seen this lately afaik


Added a method to verify no containers in a pod have failed.  The densit...

...y
test is modified to use this method.  #7374

LGTM


feat: LNv2 allow user to verify payment parameters before paying

Currently when paying an LNv2 invoice, there are a number of parameters that the user does not have a chance to verify, such as the CLTV delta and fees that are paid to the gateway. This PR refactors LNv2's API and allows the CLI (and other integrators) to display relevant details to the user before executing the payment.

Users cannot decide that better than a vetted gateway operator which has access to the channel graph and routing history.

Users should ultimately be the ones who are in control of their money. Currently, the user isn't even informed what fees they are paying, its just taken from their balance. You'd need to actually look at the code and dissect the constants to figure out what you're actually being charged. This is a horrible user experience, money just starts disappearing and users don't know why.
This PR doesn't even change any of the sensible limits, it just displays them to the user and allows them to decide if they still want to do the payment.
Ultimately I think users should also decide what limits are sensible for them. We can give them a reasonable default, but I don't think we should assume that everyone has the same tolerance to fees.

We definitely need a way to show fees to users ahead of time. LNv1 allows that by making the fee announcement part of the gateway struct that you'll have to supply to the pay function, so integrators can do:

Call select gateway fn
Use fee information from that to calculate fee to show to users
Call pay fn with selected gateway if user accepts

I don't mind how exactly it's being implemented, but fees have to be known.

I am sorry there are multiple issues with this pr, and with the concept in general. Since there's so much to say on this I would propose a call with @elsirion and @m1sterc001guy to elaborate.

@joschisan and I had a chat about this today. I will try to summarize here.
I think there are two tensions here:

Keeping LNv2's API simple and easy to integrate
Whether or not the CLI should show these parameters.

I think regarding 1) we are mostly on the same page. The proposed API changes make it a bit more difficult to integrate, since now there is a RoutingInfo struct that is necessary. One option would be to change it so it takes a Option<RoutingInfo>, which would essentially just short-circuit the REST call to the gateway. I am open to feedback here.
On the second point I think we have a more fundamental disagreement. @joschisan sounded open to allowing app integrators display the fee and routing information but prefers to wait to hear from app integrators to see if that's what they desire before opening the API. Personally, I think fedimint-cli is a valid use case for using this API. I think the CLI should be a full-fledged "expert" wallet (similar to lncli or lightning-cli in the Lightning world) and not just a toy that is used for testing and in CI.
I am interested to hear others' opinions. I will change this to a draft for now.

Also, the cli right now is a close reflection of the module api such that an integrator can use it to get familiar with the module api before integration - this was a point mentioned by @maan2003 when reviewing the modules api. For now at least this is a property I would like to maintain.

If the module does not expose a way for any integrator (CLI or any other app) to compute fees and show them to the user, this is essentially an endorsement that they do not need to be shown at all. I do not mind making the CLI a reflection of the module API, but on this I simply disagree. I believe users should always be shown how their money is being used and have the option to continue or not.

Also, the cli right now is a close reflection of the module api such that an integrator can use it to get familiar with the module api before integration - this was a property brought to my attention by @maan2003 when reviewing the modules api for integration

I don't recall my exact words. But, I use cli code (not cli itself) to see how to use the module api. This means cli should exercise all public functions of a module client. The cli interface doesn't have to be exactly same as rust api.

Last Thursday on the deep dive we agreed to close the PR for now and revisit the issue eventually. For now integrators can show:

An upper fee limit enforced by the client
An upper fee limit estimated by querying all the gateways upfront and taking the max fee from them (racy, but likely good enough unless a GW is actively malicious)
Display the exact fee paid after the payment succeeded


Fix it-pipe types

Overwrite types until this issue is fixed https://github.com/alanshaw/it-pipe/issues/4
Original types contain
export function pipe (first: any, ...rest: any[]): any

Which act as a @ts-ignore compromising type safety

As I sadi in chat. I think it would better to upstream proper types to it-pipe instead of hacking code and types like this just to make it work. IMO there is no rush to change this as this code works (without full typesafety) and we won't be required to change anything anytime soon so we can wait to get better it-pipe types upstream.


support mips64le architecture.

I am going to submit mips64le architecture，The main reasons are:
1、The mips64le architecture is also the mainstream cpu architecture (amd64, arm64), which is used by many users;
2、Golang supports cross compilation, and mips64le is officially supported;
Therefore, I hope that the release package also supports the mips64le architecture, which is convenient for more users.

Codecov Report

Merging #309 (3a5d298) into main (f25feec) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #309   +/-   ##
=======================================
  Coverage   38.07%   38.07%
=======================================
  Files          33       33
  Lines        1513     1513
=======================================
  Hits          576      576
  Misses        844      844
  Partials       93       93

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 f25feec...3a5d298. Read the comment docs.


Aspect processing issues

I have recently mirrored the L1 FITS files from pub099/…/SCI/ to our server at AIP, and I find many issues with the aspect burst data files. It would take me some time to make a detailed list with all issues, here’s a general description of some problems:

many files are missing, although the “L1A” version exists on pub023
the time resolution is often wrong, but not always. For example, quite a few files appear to have a time resolution of 3.0s or
even 10.0s but actually the maximum value that I’ve used is 1.024 s
when several requests were submitted for different time ranges in a given day, the data is merged in a file and the time
information is not correct

Here is a list of all requests that were submitted since day 1, with all parameters and whether they failed or were properly > executed:
https://docs.google.com/spreadsheets/d/1SBtpKrkXP6t3NfQA6Bl3nEpglR5W85R3gLmqRtikLoQ/edit?usp=sharing

@FredSchuller could you expand a little on the the google sheets for example the number of data samples you expect, the time resolution in seconds?
Also it's not clear to me which rows should have fits files and which should not if you could indicate that would be really helpful. I see you have column with unique ID but there are entries way before aspect data had unique request IDs so I'm a little confused?

This is the list of aspect files produced by the current pipeline

./2020/04/15/SCI/solo_L1_stix-sci-aspect-burst_20200415T135524-20200415T135532_V01_0.fits
./2020/04/15/SCI/solo_L1_stix-sci-aspect-burst_20200415T175903-20200415T175911_V01_0.fits
./2020/04/17/SCI/solo_L1_stix-sci-aspect-burst_20200417T215708-20200417T215716_V01_0.fits
./2020/04/27/SCI/solo_L1_stix-sci-aspect-burst_20200427T215140-20200427T215148_V01_0.fits
./2020/04/29/SCI/solo_L1_stix-sci-aspect-burst_20200429T214305-20200429T214313_V01_0.fits
./2020/05/06/SCI/solo_L1_stix-sci-aspect-burst_20200506T190738-20200506T190811_V01_0.fits
./2020/05/08/SCI/solo_L1_stix-sci-aspect-burst_20200508T082331-20200508T082339_V01_0.fits
./2020/05/16/SCI/solo_L1_stix-sci-aspect-burst_20200516T202523-20200516T203406_V01_0.fits
./2020/05/27/SCI/solo_L1_stix-sci-aspect-burst_20200527T084325-20200527T084535_V01_0.fits
./2020/05/28/SCI/solo_L1_stix-sci-aspect-burst_20200528T154946-20200528T154954_V01_0.fits
./2020/05/28/SCI/solo_L1_stix-sci-aspect-burst_20200528T174201-20200528T174209_V01_0.fits
./2020/06/14/SCI/solo_L1_stix-sci-aspect-burst_20200614T172736-20200614T173618_V01_0.fits
./2020/06/20/SCI/solo_L1_stix-sci-aspect-burst_20200620T014130-20200620T014341_V01_0.fits
./2021/01/07/SCI/solo_L1_stix-sci-aspect-burst_20210107T155334-20210107T160217_V01_0.fits
./2021/02/20/SCI/solo_L1_stix-sci-aspect-burst_20210220T055123-20210220T060005_V01_0.fits
./2021/02/21/SCI/solo_L1_stix-sci-aspect-burst_20210221T054449-20210221T054700_V01_0.fits
./2021/02/21/SCI/solo_L1_stix-sci-aspect-burst_20210221T055000-20210221T055210_V01_0.fits
./2021/03/23/SCI/solo_L1_stix-sci-aspect-burst_20210323T032808-20210323T033651_V01_0.fits
./2021/03/26/SCI/solo_L1_stix-sci-aspect-burst_20210326T182659-20210326T182732_V01_0.fits
./2021/07/21/SCI/solo_L1_stix-sci-aspect-burst_20210720T235959-20210721T000841_V01_0.fits
./2021/08/02/SCI/solo_L1_stix-sci-aspect-burst_20210802T065359-20210802T065407_V01_0.fits
./2021/08/09/SCI/solo_L1_stix-sci-aspect-burst_20210809T155958-20210809T160841_V01_0.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T024159-20210817T024304_V01_0.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T024359-20210817T025241_V01_2108170028.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T042859-20210817T043741_V01_2108170029.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T061359-20210817T062241_V01_2108170030.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T075900-20210817T080742_V01_2108170031.fits
./2021/08/17/SCI/solo_L1_stix-sci-aspect-burst_20210817T094359-20210817T095242_V01_2108170032.fits
./2021/09/13/SCI/solo_L1_stix-sci-aspect-burst_20210913T055800-20210913T060010_V01_0.fits
./2021/09/14/SCI/solo_L1_stix-sci-aspect-burst_20210914T024359-20210914T024449_V01_2109140643.fits
./2021/09/14/SCI/solo_L1_stix-sci-aspect-burst_20210914T042859-20210914T043741_V01_2109140644.fits
./2021/09/14/SCI/solo_L1_stix-sci-aspect-burst_20210914T061359-20210914T062241_V01_2109140645.fits
./2021/09/14/SCI/solo_L1_stix-sci-aspect-burst_20210914T075859-20210914T080741_V01_2109140646.fits
./2021/09/14/SCI/solo_L1_stix-sci-aspect-burst_20210914T094359-20210914T095241_V01_2109140647.fits
./2021/10/13/SCI/solo_L1_stix-sci-aspect-burst_20211013T034959-20211013T035842_V01_0.fits
./2021/10/13/SCI/solo_L1_stix-sci-aspect-burst_20211013T034959-20211013T035842_V01_2110130059.fits
./2021/10/13/SCI/solo_L1_stix-sci-aspect-burst_20211013T035000-20211013T035121_V01_2110130054.fits
./2021/10/13/SCI/solo_L1_stix-sci-aspect-burst_20211013T154959-20211013T155121_V01_2110130055.fits
./2021/10/13/SCI/solo_L1_stix-sci-aspect-burst_20211013T154959-20211013T155841_V01_2110130060.fits
./2021/11/30/SCI/solo_L1_stix-sci-aspect-burst_20211129T235959-20211130T000120_V01_2111300007.fits
./2021/11/30/SCI/solo_L1_stix-sci-aspect-burst_20211130T000000-20211130T000210_V01_0.fits
./2021/12/09/SCI/solo_L1_stix-sci-aspect-burst_20211209T165759-20211209T165829_V01_2112090010.fits

@samaloney The time resolution (in ms) is given in column H ("sampling") in the google sheet. I have now added a column "Nb. rows (exp'd)" that gives the expected number of entries (= duration / sampling).
When the execution date is marked in green, this means that I was able to download the L1A data from pub023; same is true when it's marked in yellow (usually this means there are data, but incomplete). Only when it's red there was a good reason not to get data (e.g. if STIX was turned off (!)). For example in April 2021 there were several requests which returned data, but there is no file on pub099. I can go through your list to compile the list of missing ones.
Regarding the "unique ID", this is from column "UID" in the "STIX user data requests" table
https://pub023.cs.technik.fhnw.ch/view/user-data-requests/list
but since this ID was not really used in the past, at some point I stopped reporting this value in my google table. Only since the latest FSW update would it make sense to keep track of this ID.


Integration Test - Release - 2019/10/31 18:02:21

Auto create for integration test. IssueCommandFlow

#pri1

Just type '#pri3'

#pri2

#pri3

#assign PRMergerTest1

#assign NonAllowedUser

NonAllowedUser is not a valid GitHub ID, or is not a collaborator on this repo.

#reassign PRMergerTest2

GitHub user PRMergerTest1 has been removed from the MicrosoftDocs organization, so they were automatically removed as an assignee.

#reassign NonAllowedUser

NonAllowedUser is not a valid GitHub ID, or is not a collaborator on this repo.

#please-close


JumpSearch implementation in C

🚀 Feature
Jump sort algorithm implementation in C language.
Have you read the Contributing Guidelines on Pull Requests?
Yes
Motivation
To add this new feature.
Please assign this feature to me under GSSOC'21.

Is someone going to assign this issue to me?

@bhav09 @ankitaggarwal23 @gat786 ??

We are flooded with contributors requesting for PRs and Issues. Sorry for the delay, hope you understand.

Yeah, I understand. Thanks for assigning the issue. And sorry for bothering you.

Anytime bro :)
Happy learning!


[Event Request] Table 23 - "Vendor" - OnShowContactOnBeforeSelectContactList

Dear ALAppExtensions team,
through this issue we would like to request adding event publisher OnShowContactOnBeforeSelectContactList in table 23 "Vendor" with the following signature:
[IntegrationEvent(false, false)]
local procedure OnShowContactOnBeforeSelectContactList(var Vendor: Record Vendor; var ContactPageID: Integer; var IsHandled: Boolean)
begin
end;

and it would be called as follows in ShowContact()
    procedure ShowContact()
    var
        ContBusRel: Record "Contact Business Relation";
        Cont: Record Contact;
        OfficeContact: Record Contact;
        OfficeMgt: Codeunit "Office Management";
        ConfirmManagement: Codeunit "Confirm Management";
        ContactPageID: Integer;
>>>>start new variable
        IsHandled: Boolean;
<<<<end new variable
    begin
        if OfficeMgt.GetContact(OfficeContact, "No.") and (OfficeContact.Count = 1) then begin
            ContactPageID := PAGE::"Contact Card";
            OnShowContactOnBeforeOpenContactCard(OfficeContact, ContactPageID);
            PAGE.Run(ContactPageID, OfficeContact);
        end else begin
            if "No." = '' then
                exit;

>>>>start new event
            IsHandled := false;
            OnShowContactOnBeforeSelectContactList(Rec, ContactPageID, IsHandled);
            if IsHandled then
                exit;
<<<<end new event

            ContBusRel.SetCurrentKey("Link to Table", "No.");
            ContBusRel.SetRange("Link to Table", ContBusRel."Link to Table"::Vendor);
            ContBusRel.SetRange("No.", "No.");
            if not ContBusRel.FindFirst then begin
                if not ConfirmManagement.GetResponseOrDefault(StrSubstNo(Text003, TableCaption, "No."), true) then
                    exit;
                UpdateContFromVend.InsertNewContact(Rec, false);
                ContBusRel.FindFirst();
            end;
            Commit();

            Cont.FilterGroup(2);
            Cont.SetRange("Company No.", ContBusRel."Contact No.");
            COntactPageID := PAGE::"Contact List";
            OnShowContactOnBeforeOpenContactList(Cont, ContactPageID);
            PAGE.Run(ContactPageID, Cont);
        end;
    end;

Thank you in advance

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 53591.


Setting interrupt_min_words seems to cause queued agent responses after interruption

Settings:

interrupt_min_words set to 2
Silero VAD + Deepgram STT + Eleven Labs TTS + OpenAI LLM
All other VoiceAssistant settings use their default values

Steps to repro:

Begin speaking, and say something that will cause a long response from the agent (eg, "Count backwards from 10")
Pause and let the audio playback begin
Quickly ask something else, like what color is the sky

Experienced behavior:

The first response is read aloud in its entirety
The answer to my second question is played after the first completes - feeling delayed or duplicated

Expected behavior:

First audio is cut off and second audio begins shortly after

Hey, this should be fixed in the new version. Feel free to reopen if you're still able to reproduce this issue


Implement scraping strategy for states with supplementary documents

Use TX (#71) as the template for implementing other states' historical document-oriented scraping.

" check if file is in cache, if not download from url"
It looks like we are using the following service to host external files: "https://storage.googleapis.com/bln-data-public/warn-layoffs/tx_historical.xlsx"

[x] OR (#139)
OR's historical file hosted here:
https://storage.googleapis.com/bln-data-public/warn-layoffs/or_historical.xlsx

[x] NY (#136)
NY's historical file hosted here:
https://storage.googleapis.com/bln-data-public/warn-layoffs/ny_historical.xlsx

Closed with #241 and #240 pull requests. Leaving OR scraping strategy open because there is more discussion to be had about whether we will continue to support website-scraping functionality or lean fully on historical document scraping which has more data.


Bump Go in provisioner

Description
Changes proposed in this pull request:
Related issue(s)

/retest

/retest

/test all


Make falso instantiable

Description
Picture this:
function createPerson() {
  seed('person-seed');
  return {
     name: randFullName(),
     company: createCompany(),
     job: randJobTitle()
  };
}

function createCompany() {
  seed('company-seed');
  return {
    name: randCompanyName(),
    city: randCity()
  };
}

In this example, randJobTitle() is called with company-seed instead of person-seed, because the createCompany() that's called before it has changed the seed globally.
Proposed solution
In such cases it would be great if we were able to instantiate falso, like so
function createPerson() {
  const falso = new Falso();
  falso.seed('person-seed');
  return {
     name: falso.randFullName(),
     company: createCompany(),
     job: falso.randJobTitle()
  };
}

function createCompany() {
  const falso = new Falso();
  falso.seed('company-seed');
  return {
    name: falso.randCompanyName(),
    city: falso.randCity()
  };
}

This would isolate and prevent unexpected side effects like in the example above, where changing the seed somewhere affects the whole application after it.
Alternatives considered
No response
Do you want to create a pull request?
No

This might be important for test runners that not isolate the runner processes (ie. Node built-in test runner). The implementation could as well be done with an object factory, that could avoid prototype, while keeping TS interface guarantees.


[MRG] StableBaselines Agent

I'm finishing work on the StableBaselines wrapper that I was working on before. Unfortunately, SB3 algorithms don't seem to reliably satisfy check_fit_additive, so I removed it from the tests.
Let me know what you think!

It seems tests are failing because stable_baselines isn't a requirement. Do we set up an optional requirement such as with torch?

Yes I think it is ok to add it as optional requirement because I think the people that install torch will also want to install stablebaseline.
My only concern is about the install time when doing the tests but I guess it should not be a huge increase because a lot of stablebaselines's dependencies are already dependencies of rlberry.

@omardrwch mentioned that maybe we can create a dummy SB3 algorithm class and avoid the import issues. I will look into this.

On another note, I added a test to test tensorboard integration but the test seems to be failing when I try to import tensorboard. Should I remove it?

@TimotheeMathieu On another note, I think PR #144 broke my git pre-commit setup - now flake8 stops me because of the unused imports on the __init__.py files that used to be ignored. Do you know how to fix this?

I don't really know what we should do. i mean, tensorboard is not huge (5Mb) so I think we could just add it to the requirements and be done with it. On the other hand, if we want to stay compatible with everyone we may encounter this problem again in the futur and it would not be good to always add requirements like that. One solution would be to have a directory for additional "extra" tests, these tests we could check on a parallel check of azure pipeline (have a pipeline on linux that checks only these tests in order not to have a too long running time for the checks, with its own additional dependencies that would not appear in requirements.txt). Or we could also not test them at all, but still I think it is good to have these tests so we keep them, the only question is do we check them in azure pipeline or not ?

@omardrwch What do you think about this? I'm tempted to just add it to the requirements for now.
Also, I'll look into the batch_size problem that @TimotheeMathieu talked about. Maybe we can set batch_size=1 also solve the issues I was having, but I'll have to run some tests again.

I did some experiments and I think it may be because of reset_num_timesteps. With the following fit function:
    def fit(
        self,
        budget: int,
        tb_log_name: Optional[str] = None,
        reset_num_timesteps: bool = True,
        **kwargs,
    ):
        """Fit the agent.

        Note
        ----
        This method wraps the :code:`learn` method of the algorithm.
        Logging parameters are processered by rlberry in order to use the
        agent.writer.

        Parameters
        ----------
        budget: int
            Number of timesteps to train the agent for.
        tb_log_name: str
            Name of the log to use in tensorboard.
        reset_num_timesteps: bool
            Whether to reset or not the :code: `num_timesteps` attribute
        """
        # if not self.wrapped._custom_logger:
        #     if tb_log_name is None:
        #         tb_log_name = self.wrapped.__class__.__name__
        #     sb_logger = configure_logger(
        #         self._verbose, self._tb_log, tb_log_name, reset_num_timesteps
        #     )
        #     self.set_logger(sb_logger)
        self.wrapped.learn(total_timesteps=budget, reset_num_timesteps=False, **kwargs)

I obtain the following add graph:

and I guess this is OK, with batch size 1 the fit is additive (which is what we want).

@TimotheeMathieu
I think you're right: I assume that reset_num_timesteps is used only for logging purposes (as they mention in their docs), but it seems that it is used to possibly reset the environment too.
However, I can't comment out that part of the code because that's what integrates their logging to rlberry. I came up with a solution that seems to solve the issue - I'll push the changes as soon as I'm finished with testing.

Just an update: I've been able to (partially) fix the additive fit issues for the agent.
I encountered one last problem: it seems that it is difficult to guarantee additive fits when a model is saved and then loaded during training. First, the standard .save() and .load() methods from StableBaselines don't support additive fits by themselves. By using .get_parameters() and .set_parameters() instead, I can get the additive fits to work in isolation, but the method breaks when I implement it in the agent - although it does seem some sort of approximation error since the predicted values are very close.
This is relevant because our AgentManager saves and loads agents all the time, so I can't guarantee additive fits in that case. More specifically, our additive fit test uses AgentManager's, so it still fails :(

@omardrwch What do you think about this? I'm tempted to just add it to the requirements for now.

Sorry, I'm a bit (very) late in this PR. Regarding the tensorboard requirement, I think it's ok to add it for now. I think the SB3 wrapper is a very important feature, so testing it should be worth the extra requirement. Later we could implement @TimotheeMathieu 's suggestion (of creating a directory for additional heavier tests) when needed (e.g. also for a more comprehensive testing of our agents, to make sure that they match some benchmarks).


Improve pangolin port

This changes the pangolin port to use vcpkg's libraries instead of downloading and building them itself. As a consequence the port has now a few more dependencies.
There was also an export header missing which is now copied, and static builds are supported.
Fixes #1865 and #1866.

Awesome, thanks!
(I bumped the version in the CONTROL file to signify that there were changes)


feat(#344): Identify Problem With INVOKESPECIAL Instruction

In this PR I identified problem related to INVOKESPECIAL instruction decompilation.
I added one more integration test to reveal the problem and added one more puzzle to solve the problem in the future.
Related to #344.

PR-Codex overview
This PR adds a new Playground class, tests it, and refactors the InvokespecialHandler class.
Detailed summary

Added Playground class with isAvailable method
Added test for Playground class in Main.java
Refactored InvokespecialHandler class in handlers package

The following files were skipped due to too many changes: src/test/resources/xmir/disassembled/WebProperties$Resources$Chain$Strategy$Content.xmir

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@rultor merge

@rultor merge

@volodya-lombrozo OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@volodya-lombrozo Done! FYI, the full log is here (took me 8min)

@volodya-lombrozo Thanks for the contribution! You've earned +5 points for this: +30 as a basis; -7 for too many hits-of-code (251 >= 100); -15 for the lack of code review; -10 for too few (2) comments; +7 to give you at least something. Please, keep them coming. Your running balance is +274.


Live update for job detail page

Currently user should refresh job page manually, make it live.

Moving ideas out of Github issues.


Add SelectedMajoranaFermion Bloq from Cirq-FT

Part of Qualtran & Cirq-FT Integration

@fdmalone Can you please LGTM so it can be merged?


Chatterbot with feedback

Hi!
I'm a beginner in ChatterBot and I'm very impressed with its features! Thank you in advance.
But I've an interest in a feedback of user if the bot doesn't be able to answer with the better solution.
For example: if I ask "How are you?" and its database only has the answer "I'm fine", and I want the answer "I'm not very well", I will need to update the database with the new answer.
In my code, I achieve it inserting two news sentences in my list "ans". But asking new questions, the bot doesn't deliver my wish answer, replacing the previous.
And the examples at the GitHub "learning feedback" and "default response" seems doesn't working very well (at least in my computer).
Can you help me to impose to bot to choose the better answer based on my feedback? I would like to use the feedback to update directly the database, removing a statement of database, for in a new questioning, the bot already answer me with new entry. I don't know how to remove a statement of database.
In many tries, the answer didn't change, altough the list updated...
Thanks.
from chatterbot.trainers import ListTrainer
from chatterbot import ChatBot

question,answer,y,n="","","",""

bot = ChatBot('Answ Bot')

ans= ['How are you?', 'I'm fine','And you?','I'm fine too, thanks']

bot.set_trainer(ListTrainer)
bot.train(ans)

while True:
    question= input("User: ")
    answer= bot.get_response(question)
    if float(question.confidence) > 0.5:
        print('Answ Bot: ', answer)
        print('Answ Bot: was my response good? [y/n]')
        r1=input()
        if r1=='y':
            print('Answ Bot: thank you for feedback')
        else:
            print('Answ Bot: may you teach me a better answer?')
            r2=ans.index(answer)
            ans2=ans.copy()
            del ans2[r2]
            answer2 = input("User: ")
            ans2.insert(r2,answer2)
            bot.train(ans2)
            print(ans2)
    else:
         print('I don't know the answer.')

This example learning_feedback_example might help you https://github.com/gunthercox/ChatterBot/blob/master/examples/learning_feedback_example.py

I'm going to close this ticket off due to lack of activity. Feel free to reopen it if the issue continues to persist.

I have the same problem with the example.if my answer is no,it works fine,if yes,it goes wrong like this .
hello
Is "Hi" this a coherent response to "hello"?
yes
Traceback (most recent call last):
File "126.py", line 112, in
bot.learn_response(CONVERSATION, response, input_statement)
TypeError: learn_response() takes 3 positional arguments but 4 were given

@alegalopes / @Xieluqiaofu The error you are seeing (TypeError: learn_response() takes 3 positional arguments but 4 were given) is because the number of parameters that the learn_response method has changed in the latest version of ChatterBot that is currently being developed. Please downgrade the version of ChatterBot you have installed or remove the CONVERSATION parameter from that method call.


xorg.xorgserver: patch CVE-2023-0494

https://lists.x.org/archives/xorg/2023-February/061255.html
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@vcunat when is staging-next due? This should hit systems sooner rather than later.

We now pulled the high-severity openssl bumps, but 22.11 is being rebuilt first.


Unclear how to write valid "array" content in csv: update tags [REPLACEMENT ISSUE]

The original issue
Id: 62
Title: Unclear how to write valid "array" content in csv: update tags

could not be created.
This is a dummy issue, replacing the original one. It contains everything but the original issue description. In case the gitlab repository is still existing, visit the following link to show the original issue:
TODO

In GitLab by @kbubnicki on Oct 13, 2020, 14:44
I think it makes sense to simplify it but then comma can not be used as tags separator as it is csv fields separator, right? Solutions could be:

Always use comma , as csv separator and ; as tags separator.
Always put comma-separated list of tags into double quotes e.g. "tag1,tag2,tag3"

I think I am more for 1.

In GitLab by @peterdesmet on Oct 13, 2020, 15:25
changed the description

In GitLab by @peterdesmet on Oct 13, 2020, 16:15
I generally use | as separator, but before we decide on separators, do we agree to change data type to string (not array)? Note that I think for some fields with enum, Array might still be the best choice.

In GitLab by @kbubnicki on Oct 13, 2020, 21:08
I think so, at least for fields like this we can change data type to string.

In GitLab by @peterdesmet on Oct 14, 2020, 11:34
There are a couple of array types in the package profile (sampling_design, organizations, ...) which is fine, because that is JSON anyway.
The only array type in the csv is the above discussed tags, which is better changed to string. Do we want force a pattern for these?

In GitLab by @peterdesmet on Oct 14, 2020, 11:35
changed title from Unclear how to write valid "array" content to Unclear how to write valid "array" content{+ in csv+}

In GitLab by @peterdesmet on Nov 19, 2020, 10:08
Decided to change to string, and update definition to recommend | delimited values. Could be enforced with pattern

In GitLab by @peterdesmet on Nov 19, 2020, 13:09
mentioned in commit 53e22cb1df08f8683c6e99f6f49753c5cf4a8c9b

In GitLab by @peterdesmet on Nov 19, 2020, 13:11
@kbubnicki see https://gitlab.com/oscf/camtrap-dp/-/commit/53e22cb1df08f8683c6e99f6f49753c5cf4a8c9b and close issue if you agree. Note:

I did not add a pattern
The example has whitespace around the pipe (cf. Darwin Core, to improve readability), but writing without spaces would also be valid

In GitLab by @peterdesmet on Nov 19, 2020, 13:12
changed title from Unclear how to write valid "array" content in csv to Unclear how to write valid "array" content in csv{+: update tags+}


Are you accepting contributions?

Hello, are you accepting contributions? I want to use rust-style Result but I would like it to be more complete than this currently is. I am willing to implement functionality from rust that makes sense to me, if you are accepting contributions.

Hello, I accept contributions and will be glad to see other people's activity


keras.backend.ctc_batch_cost is missing?

Hi, I'm trying to follow this tutorial on image ORC: https://keras.io/examples/vision/captcha_ocr/
But in keras.backend there is no ctc_batch_cost. Any idea?

same issue


[Feedback] initial setup dialog should mention Enlighten account

The help text of the 'username' - 'password' dialog is not clear IMHO. It mentions to uses 'envoy' or 'installer' as username, and last 6 digits of serial as password. However, almost all gateways (firmware v7) do not work with local logins anymore.
[Edit: The info is here, in the github repo, but it would be nice to also show it during setup.]
Request: please also mention that, if the 'envoy' or 'installer' login does not work, the user should try the Enlighten credentials.
Best solution: check firmware before displaying text, and act accordingly.

The configuration dialog should look like below. If this is not the case something went wrong during installation or you are using another variant of the Enphase Envoy integration. In that case, uninstall the integration, make sure the custom_components/enphase_envoy directory is gone and reinstall from HACS.


[FR] Translating by uploading PO files

Feature request:
I'm currently translating my third project with Poedit, but most of the times, Deepl already gave the perfect translation (with is great). Now I was thinking if you could add an option to upload PO (translation file) or POT (template for translation) files to Deepl to decrease the amount of work on translating projects.
The layout of a PO file is quite simple:
a few comment lines
msgid ""
msgstr ""
"a lot of nonsens about who made the translation, etc."

#: location/of/the/file.xxx:438 (line number)
msgid: "Phrase to translate"
msgstr: "Translated phrase"

#: location/of/the/file.xxx:465
msgid: "Phrase to translate"
msgstr: "Translated phrase"
etc.

Hope this will be implemented. My coding skills are fine for some Arduino stuff, but not good enough to write a script to automate this.
Regards,
Simon

Repository not maintained


torch_poly_lr_decay

torch_poly_lr_decay is not in the folder

https://github.com/cmpark0126/pytorch-polynomial-lr-decay

https://github.com/cmpark0126/pytorch-polynomial-lr-decay


fix(public key): Adding public key to wallet object

:tada: This PR is included in version 1.4.2 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


Installing Visio/Project volume license on top of Office365PP existin…

…g install
The caveat is very confusing, you can install Visio perpetual on top of O365PP but you have to use different channel when you do setup.exe /download and change the channel to Monthly/Broad depending on O365PP install when you do setup.exe /configure

Blasteyes:patch-1

Volume licensed (aka "perpetual") versions of Project 2019 and Visio 2019 support all the same channels that Microsoft 365 Apps (previously named Office 365 ProPlus) do.
So if you are doing /download, you should set the Channel attribute in the Add element to the same channel as the Microsoft 365 Apps install on the device.
If you are installing directly from the internet (/configure), don't include the Channel attribute. Install is smart enough to see what channel Microsoft 365 Apps is using and have Visio or Project install use that channel.
Although channels aren't that significant for perpetual products, because they don't get any new feature updates after they ship (which is what channels are used for in Microsoft 365 Apps).


No affect in stationary?

The anti-aliasing seems to apply only when camera is in motion, or when Temporal Fade is set too high.
https://user-images.githubusercontent.com/29812914/164873479-350df64c-f121-4fd2-badb-ca074b1a489c.mp4

Are you using the scene view camera? The TAA algorithm only works when being in the game view, because the jittering is done in the TAA Camera script.


Raw files not found

Describe the bug
When I try to generate a video and if I keep the game on the foreground, it immediately closes and I have the error Raw files not found. If I leave it in the background, then it can generate a video but at the risk of not being in the right view (as
described in the FAQ). It happens with every demos (even before the big patch).
Demo links
No response
Steps to reproduce

Go to a demo
Select video and generate kill sequences
Select Generate button
Game is launching on the foreground and closes.
Raw files not found on the application

Expected behavior

Go to a demo
Select video and generate kill sequences
Select Generate button
Game is launching on the foreground
Video is generated

How often does this bug happen?
Every time
Log file
csdm.log
Environment information
Version: 3.2.3
OS: win32 x64 10.0.22631
Electron: 28.2.2
Chrome: 120.0.6099.276
Last database migrations:
v1 - 2024-01-29T15:38:50.402Z
Additional context
No response

I can't reproduce the issue. Could you upload the demo please?
Did you try to watch the demo directly from the game? See this doc for details.
If the game crashes when the playback starts, it may be due to a demo/game bug.

Here is a demo: https://www.mediafire.com/file/s19a9wnvlygbpru/match730_003667426248537145557_1073661515_377.dem/file
I can watch the demo directly from the game without any issues.

Just tried without problems, could you send a screenshot of your sequences?
I tried with a single sequence:

I used the Generate player's kill sequence functionality:

If I delete all but the first one, it seems to be working but the sequence is too short (not going until the end).

I still can't reproduce the problem :/
I generated kills of the player "KM" based on your screenshot and I don't have any errors - the video is generated and contains all kills.
I added some logs to try to understand the problem, it will be in the next version.
In the meantime you could:

Make sure you have enough disk space on the drive where CS2 is installed, see this CS2 only warning
Delete any temporary files in your D:/Videos folder (tga, wav files)

I have 80Gb free on my drive where CS2 is installed, 220 on my D: drive. The estimated usage is 8GB so I don't think it is the issue.
I have done some more testing:

If I generate for just one sequence, it is working.
If I generate for the same previous sequence and I add one more, I have the error.
If I only generate the second sequence alone, it is working.
Once the two sequences have been generate individually, I can do both of them at the same time without error but only once!
If I generate again the same two sequences, I have the error again.

Could you try with v3.3.0 and upload the logs file please?

I still have the issue with v3.3.0.
csdm.log

I still can't reproduce the problem.

Fri, 16 Feb 2024 10:43:16 GMT | ERROR | server | TGA files not found for sequence 2-sequence

I think there are 2 possible reasons:

The files of the sequence 2 were moved at the same time as files of the sequence 1
The game didn't generate images

I added some logs to try to understand, could you please try with the new version and upload the log file if it still doesn't work?

Your change seems to be enough. I did not have the error at all now.
I started playing on FaceIT now, is there a known issue where the POV is not on the selected user on faceit demos? For Valve demos, it seems to be okay though.

Cool!
About the POV it could be the same as https://github.com/akiver/cs-demo-manager/issues/775

Sorry to bump an old topic, dont know if i sould create a new one or not.
I am having this error on version 3.6.3 when i try to generate a video of round 16 of the below demo.
https://www.mediafire.com/file/0v6z32sljiharwo/match730_003690266270436950035_2060405378_201.dem/file
All i am getting in the log file is
Sun, 16 Jun 2024 01:17:52 GMT | LOG | server | Starting HLAE with command "C:\Users\aseri\.csdm\hlae\hlae.exe" -noGui -autoStart -afxDisableSteamStorage -customLoader -hookDllPath "C:\Users\aseri\.csdm\hlae\x64\AfxHookSource2.dll" -programPath "C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\bin\win64\cs2.exe" -cmdLine "-insecure -novid +playdemo \"C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\replays\match730_003690266270436950035_2060405378_201.dem\" -width 1024 -height 768 -sw" Sun, 16 Jun 2024 01:17:54 GMT | LOG | server | HLAE exited with code 0 Sun, 16 Jun 2024 01:18:04 GMT | ERROR | server | Recording folder does not exist C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\csdm\movie Sun, 16 Jun 2024 01:18:04 GMT | LOG | renderer | WS:: message with name "videos-generation-error" received from server Sun, 16 Jun 2024 01:18:04 GMT | ERROR | server | Error while generating videos Sun, 16 Jun 2024 01:18:04 GMT | ERROR | server | Error: Raw files not found     at iVe (C:\Users\aseri\AppData\Local\Programs\cs-demo-manager\resources\src\node\video\sequences\move-sequences-raw-files.ts:35:11)     at oVe (C:\Users\aseri\AppData\Local\Programs\cs-demo-manager\resources\src\node\video\generate-videos.ts:273:5)     at sVe (C:\Users\aseri\AppData\Local\Programs\cs-demo-manager\resources\src\server\handlers\renderer-process\video\generate-videos-handler.ts:56:5)     at t.onRendererProcessSocketMessage (C:\Users\aseri\AppData\Local\Programs\cs-demo-manager\resources\src\server\server.ts:177:26)

After having this issue, stumbling across this issue, and testing some things out I think I have a pretty good idea what's going on. I think it is caused by the raw files not being copied fast enough/some other issue in the copying. It only happens when I'm telling it to move the raw files to a different drive and recording at a low resolution. Even then it only happens with short sequences.
 Same sequence at 1080p60 works. I'm moving from nvme to nvme so it's copying quick.
Your idea that the files for multiple sequences are being moved at the same time seems likely. It would only happen with very small files when the raw output folder is on a different drive than the game.

I still can't reproduce the problem.

Fri, 16 Feb 2024 10:43:16 GMT | ERROR | server | TGA files not found for sequence 2-sequence

I think there are 2 possible reasons:

The files of the sequence 2 were moved at the same time as files of the sequence 1
The game didn't generate images

I added some logs to try to understand, could you please try with the new version and upload the log file if it still doesn't work?

Thanks all for the help! I managed to reproduce the issue.
I will update the status in https://github.com/akiver/cs-demo-manager/issues/920 as this issue is not the same problem.


superh: simplify div1 logic

The logic table for this is actually more condensed than the instruction summary makes it seem. This also fixes a bug in the previous code where $(Q_FLAG) was set incorrectly for the old_q = 1, M = 0, Q = 1 case.
Unfortunately I don't have a build setup for ghidra yet so I'm just verifying with my noggin. I will try to verify on a proper build soon.
cc @VGKintsugi

I'll take a look when I get a chance. I definitely struggled with the div instructions.
I was unclear on your build setup comment. You don't need to be able to compile Ghidra to test out changes to the processor modules. You can:

Delete the compiled processor modules in the Ghidra/Processors/SuperH/data/languages dir. Delete the .sla files and copy in your edited files. When you next turn on Ghidra it should automatically compile it
Or you can just compile your scripts directly with the sleigh compiler in /ghidra/support.

Oh, awesome! I'll definitely give that a try, thanks!

I've also been meaning to test out the processor module emulator\verifier\tester. I have no clue how to do it though.

`tmp0 = rn_08_11;
rn_08_11 = old_q_eq_m ? rn_08_11 - tmp2 : rn_08_11 + tmp2;
rn_08_11 = (sext(old_q_eq_m) & (rn_08_11 - tmp2)) | (sext(~old_q_eq_m) & (rn_08_11 + tmp2));
tmp1 = old_q_eq_m ? rn_08_11 > tmp0 : rn_08_11 < tmp0;
tmp1 = (old_q_eq_m & (rn_08_11 > tmp0)) | (~old_q_eq_m & (rn_08_11 < tmp0));
$(Q_FLAG) = m_eq_q ? tmp1 : tmp1 == 0;
$(Q_FLAG) = (m_eq_q & tmp1) | (~m_eq_q & (tmp1 == 0));`
If tmp0 = rn_08_11 then tmp1 will not be set here. To be on the safe side, the second half of the tmp1 statement should be modified to (~old_q_eq_m & (rn_08_11 <= tmp0)

@GhidorahRex,
Not sure what happened to @asdf-prime. I made the requested change and created a new PR: https://github.com/NationalSecurityAgency/ghidra/pull/2864.

I have made the requested changes: https://github.com/NationalSecurityAgency/ghidra/pull/2864.

@GhidorahRex : Any progress on the SuperH tickets?

duplicate of #2864


Allow converting &Array to Vec

I implemented this by replacing the original impl TryFrom<Array> for Vec<V> impl with one for &'a Array, then adding back the original implementation referencing this reference-based one.
Fixes #228.

Looks good to me! Thanks!

Thanks!


Fix multiple typos

Fix multiple typos in docs.
I'm not sure about the filename 01-priveledges.md change, if this would break SEO, then I can revert this change.

Some backgrounds on how theses typos are fixed, I've wrote a (Chinese) blog about this: https://nova.moe/fast-typo-fix/ (English version: https://nova.moe/fast-typo-fix-en/) 😇

Can you fix Vercel? Deployment has failed.

Error: Docs markdown link couldn't be resolved: (01-privileges.md) in "/vercel/path0/docs/en/guides/56-security/access-control/index.md" for version current
13:17:28.502 | at Array.forEach (<anonymous>)
13:17:28.503 | [ERROR] Client bundle compiled with errors therefore further build is impossible.
13:17:28.615 | error Command failed with exit code 1.
13:17:28.616 | info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
13:17:28.640 | Error: Command "yarn run build" exited with 1
13:17:29.276

<br class="Apple-interchange-newline">

Can you fix Vercel? Deployment has failed.

Got it, I've pushed https://github.com/datafuselabs/databend-docs/pull/760/commits/1af5685ec96e74bbf6c6fcdbfd0671f3fc92d3fa to rename en/guides/56-security/access-control/01-priveledges.md to en/guides/56-security/access-control/01-privileges.md, should fix vercel build now.
@BohuTANG ,Thanks for quoting the error, as I'm not member of datafuselabs, I cannot see the exact error vercel is throwing.


[Tests] XSOData with XSJS handlers

Target
Implement an application test that has the following functionality

Has an hdbdd with at least 1 entity
Has an xsjs with create/update/delete handlers
Has an xsodata which exposes the entity and uses the xsjs as CUD handler

The test should do the following:

Execute create, update, delete request against the odata
After each request validate that the changes are reflected in the database (ie through querying the odata)

Fixed with https://github.com/SAP/xsk/pull/1794


Savepoints features

The savepoint feature is a mechanism that allows developers to create a point in a transaction.
It provides a way to rollback to this point.
Several savepoints can be created.
Rollback would restore the last created savepoints.
-> put X = 0
-> SetSavePoint()
-> put Y= 1
-> SetSavePoint()
-> set X = 2
-> RollbackToSavePoint() = restore X to 0
-> put Z
-> Rollbackto SavePoint() = remove Y and Z

Resolved in this PR


fix(Testimonial): aria-label on Anchor

Overview
New axe error emerged from Testimonial component: Links must have discernible text. This PR fixes this error by adding an aria-label to the Anchor in Testimonial.
https://dequeuniversity.com/rules/axe/4.2/link-name?application=axeAPI

🏁 Portal PR with this gamut fix and passing e2e test

PR Checklist

[ ] Related to designs:
[ ] Related to JIRA ticket: ABC-123
[x] I have run this code to verify it works
[ ] This PR includes unit tests for the code change

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.79-alpha.f9d263.0@codecademy/gamut-labs@19.26.8-alpha.f9d263.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://61424d75c00cf2367fda23a0--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.79-alpha.f57a5d.0@codecademy/gamut-labs@20.0.0-alpha.f57a5d.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://614250fd21ac3700b2cff6cb--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.80-alpha.f5d190.0@codecademy/gamut-labs@20.0.1-alpha.f5d190.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://614255639101340094541c86--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.81-alpha.e515f6.0@codecademy/gamut-labs@20.0.2-alpha.e515f6.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://614281da3694202d57de9994--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.81-alpha.5b8d84.0@codecademy/gamut-labs@20.0.2-alpha.5b8d84.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://6143771a9101348ec5541d80--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.5.82-alpha.44fbdc.0@codecademy/gamut-labs@20.0.3-alpha.44fbdc.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://61437ca277fd6600d50d68bc--gamut-preview.netlify.appDeploy Logs


Fails to use latest version of angular

Why do I have to manually update NPM to use latest angular version.
I am seeing version 5.0.0 get install when 5.1.2 is available?
Versions
Angular CLI: 1.6.2
Repro steps

Step 1 ng new app

Look at package.json, not current version.
Desired behavior
Install latest version of Angular NPM modules.
Mention any other details that might be useful (optional)

All works as expected
Please, see link
https://docs.npmjs.com/misc/semver
version "^5.0.0" := >=5.0.0 <6.0.0

You have to be joking to point to a NPM spec.


Angled labels on x-axis can cause start of y-axis grid lines to be rendered incorrectly (v2.0)

With angled tick labels on the x-axis, the start of the y-axis grid lines gets offset, which looks incorrect as it introduces a gap before the chart starts.
Actual result:

(start of y-axis grid lines is offset, leaving blank space before the chart)
Expected result:

(start of y-axis grid lines aligns with first tick of x-axis)
Test case: http://jsbin.com/katihageca/1/edit?html,js,output
Thanks

One option is to set the maxRotation to 0 on the x axis, but it's only slightly better: http://jsbin.com/yifuxuqura/1/edit?html,js,output


The  poll(limit) in ReactiveQueue returns a MonoLift instead of Flux

Expected behavior
When call

RBlockingQueueReactive.poll(limit),

I expect it returns

Flux

Actual behavior
But it returns below error, and the non-reactive lib is OK, is the reactive function provided in redisson PRO only?

java.lang.ClassCastException: class reactor.core.publisher.MonoLift cannot be cast to class reactor.core.publisher.Flux (reactor.core.publisher.MonoLift and reactor.core.publisher.Flux are in unnamed module of loader 'app')
at com.sun.proxy.$Proxy199.poll(Unknown Source)
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:

Steps to reproduce or test case
`

@GetMapping(value = "/redis/pop")
public Flux pop() {
RBlockingQueueReactive rbq = redissonClient.getBlockingQueue("RRedis-BQ");
return rbq.poll(3);
}
`
Redisson version
3.12.* , 3.13.0

Fixed


View doesnot come to its original position after it moves up.

When i input text in textfield, the textfield moves up and provides user to input , but when i completed inputing text and click on done, the textinput field doesnot comes to its original place, i have enabled alwaysBounceVertical={true} and scrollEnabled={false}. what had happened now? i think the view should comes to its original place after text input task is finished.

You have to blur your input on the onSubmitEditing method: http://facebook.github.io/react-native/releases/0.27/docs/textinput.html#textinput

@alvaromb I have the same problem and nothing seems to help here :(

@alvaromb I found the solution to my problem:
If I remove this line, everything works like expected 👍 (I'm also not quite sure for what you need this, only if you use the native ios tabbar?)

That line is what resizes the ScrollView when the keyboard appears. Sorry but I don't follow what's the issue you're getting. Can you show me a gif of what's actually happening?

Thanks for your help.
What is the resize needed for? Whats the use case here? It does scroll to the input anyway?
Step 1 (no space between header and content)

Step 2 (focus one input, ScrollView will scroll to)

Step 3 (see space between header and content, always the same space, no matter the input field I focused)

The whole ScrollView has somehow more marginTop (because even the ScrollBar starts below). It does not happen with a normal ScrollView and it does not happen if I remove the contentInset. Setting contentInset to 0 does NOT solve this problem.

If your form inside the scroll view is bigger than the scroll viewport, if you don't adjust the content inset you'll not be able to scroll the content behind the keyboard. It's one of the main features of this library and it's independent of the auto scroll behaviour.

I think I got what you are telling. It doesn't matter for me because the viewport of my scrollview will expand with my form itself? e.g. the whole page is a scrollView and not only a small section within it, right?


GH-29642: [R] Support for .keep_all = TRUE with distinct()

Rationale for this change
Support a missing feature, just wiring up some stuff from R to Acero, then adding docs and tests.
This is mostly picking up where #13934 started and finishing it out. Thanks @mopcup for the initial lift.
What changes are included in this PR?
An aggregation binding, some symbol manipulation, and tests. I also cleaned up some dplyr test shims from 2022.
Are these changes tested?
Yes, though if anyone knows of odd corners in distinct() that aren't covered by this, we can add more
Are there any user-facing changes?
Yes indeed.

GitHub Issue: #29642

Is there any chance to get it merged? I would very much need to use it in my code!
Thanks.

Thanks. So it will be in the next release?

It missed the latest release, but once it merges it'll be in the following one. Alternatively, you could use nightly builds starting the day after it merges.


Make spaces between cards configurable

Currently a fixed space of 15 pixels is set between the cards, with no option to change it.
Describe the solution you'd like
A config option to set the space between the cards.
Describe alternatives you've considered
When using a flex layout, a custom stylesheet can be used to modify margins and padding of each card individually, which could lead to a desired result but can be a hassle.

I'd like to work on this issue.
I propose introducing a new configuration option named card_spacing that allows users to set the space between cards. This configuration option should have a default value and be configurable in the Wave app's configuration.


Feature: symmetry breaking, translation using aggregates

Instead of replacing:
:- slot(J1,M,T); slot(J2,M,T); J1 != J2.

with
:- slot(J1,M,T); slot(J2,M,T); J1 < J2.

we could also use an aggregate to count:
:- #sum {1,J : slot(J,M,T)} >= 2, slot(_,M,T).

This can especially be useful if we have more than one inequality.

After discussion in #55 this should be implemented.
If the literals occur directly in the body, they can be replaced by an aggregate. Literals inside an aggregate are not affected.

I can't translate all of these symmetries to a counting aggregate.
For the old version I assured that the inequalities variables are really not equal, e.g. they do not occur somewhere else.
All positions inside the predicate that are not unequal must be equal.
The old version allows this to happen by using the same Variable (e.g. M) or explicit equalities: M1 = M2.
These variables could then also occur outside of the predicate.
Which means I could need to bind them if they have been bound before.
A translation from
:- slot(J1,M1,T); slot(J2,M2,T); J1 != J2, M1 = M2.

becomes
``
:- #count {slot(J,M1,T) : slot(J,M1,T)} >= 2, slot(_,M1,T), M1 = M2.

TODO: I need to collect the set of equalities explicitly.

f(X) :- node(X), player(P1, X, Y, V1), player(P2, X, Y, V2), P1 != P2, V1 != V2.

was formerly replaced by:
f(X) :- node(X); player(P1,X,Y,V1); player(P2,X,Y,V2); V1 != V2; P1 < P2.

but now it is:
f(X) :- node(X); V1 != V2; player(_,X,Y,V1); 2 <= #count { P1: player(P1,X,Y,V1) }.

which leaves V2 unbounded and also V1 != V2 unconcerned.
What is the correct translation ?

Simply keep the old translation.
New case:
:- at(X,Y,T); at(X,Y,U); minot(Z,W,T); minot(Z,W,U); not U = T.

should not become:
:- at(X,Y,_); minot(Z,W,_); 2 <= #count { T: at(X,Y,T) }; 2 <= #count { T: minot(Z,W,T) }.

As it is no longer the same T used for both predicates. Also use old translation.

New algorithmic approach:

expand all comparisons to single comparisons
replace equalities with a single variable
detect the maximum set of same predicates where all positions are either

exactly the same (as we use same variables) (also covers functions and constants)
contain exactly one variable each, but are otherwise equal (e.g. X and Y or f(X) and f(Y)) and
1. have an inequality X!=Y
2. have an ordered inequality X<Y or X>Y
3.  Future TODO: tuples of positions can be marked unequal (X,Y) != (W,Z)
exactly one of the positions may be marked unequal (Future: more than one position can be unequal, but only one can be an ordered inequality)

If all the predicates are directly inside the body, replace them with a count aggregate and also add a projected predicate outside of the aggregate. The predicate outside should only be the domain of the symmetry predicate.
if all of the predicate are directly inside an aggregate element, we need to create a new rule.
In the new rule we add the new count aggregate and also the projected domains as in part 4. As a head we add a new aux predicate with all the equal variables. (unecessary variables will be cleaned away with the cleanup trait). There should be no need to bind the equality variables, and it is unclear whether some of the original body predicates should go to the new aux rule too. And some of the predicates that go the new new aux rule could be removed from the original rule.

New complicated case found:
:- sudoku(X,Y,M); sudoku(A,B,M); c1(Y); c1(B); r1(X); r1(A); X != A; Y != B.

becomes:
:- sudoku(X,Y,M); sudoku(A,B,M); X < A; c1(_); 2 <= #count { B: c1(B) }; r1(_); 2 <= #count { A: r1(A) }.

which is wrong.

Each Symmetry has its unequal variables. If they are shared by another symmetry, only a simple translation can be done for both of them.

fixed


Linux binaries

Would it be possible to provide binaries for Linux too? I know I could compile them myself, but I don't want to install a thousand tools and IDEs and dependencies. So can you please add a standard bin for Linux that can then be added to the apt / dnf / pacman repositories.

From a programming perspective, there is no problem. It would be quite easy adding linux support to the source. However currently, I am not satisfied with the way it handles audio playback. I am gonna clean up that and then, I'll be including linux-x64 binaries under release, thanks for your opinion.

Thanks! It would be quite cool to watch it in a no-gui session!

Hm yeah, I never tried that, just ran it under a windows VM and it worked pretty good, ik that doesn't have anything to do with wine.
However, I recently had some time for this project, and I got so far rewriting the audio engine so that it would work under linux. I only gotta clean up some code and abstract away some os-related console functions, and then it's ready to go.
Grüße aus NRW :D

Yeah sure, thank you too. You're already contributing by opening issues.

I know, I'd just like to actually help resolve the issue instead of just complaining about it

Hello, I made some changes to the linprep branch for using this on linux. If you want to try it out, clone the code on that branch and either build with make --makefile linux.Makefile (see the makefile for packages you need to install) or (what I currently recommend because this branch is a hot mess, including it's code quality (had to change like everything ffmpeg related because they wanna change the whole API in every update)) just use the "cmdpla" binary file which is in the root directory, ik it's kinda sketchy (I hate putting binary files in my repositories)
It's compiled for amd64 so it should run on every modern 64-Bit System which is not ARM.
For me, everything is working except anything which has to do with colours (need to look into it but I guess the ncurses library seems to prevent ANSI colour escape codes)
And the frame rate seems pretty low (about ~15FPS for me, independent on the output resolution so it seems to be a terminal emulator? problem). This does not seem to be a direct issue of the program though (I did some performance monitoring, the main while loop for decoding and printing out seems to run at an iteration execution speed of 3ms which should result in ~333 FPS)
Anyway, there is lots of work to do including:

fixing the colours
looking into the FPS limit?
Cleaning up the code (get rid of thousands of #ifdef linux pp statements and making some kind of abstract classes for those functions)

Maybe you'll find out something, but I mainly share this so uk I'm not lazy
(tmr is AP1 for my Ausbildung so will have more time after that)

I'm trying to compile a working binary, but need to resolve some dependencies. Sorry for the late reply

no worries, the only dependencies i think are needed are build-essentials, g++ and those listed in the linux makefile (in a comment at the top of the file)

I have noticed a slight issue when compiling on a different linux-arm64 pc. Depending on your ffmpeg distribution, you might need to add "-l/usr/include/ffmpeg".
However other than that, it compiles on a fresh system.

I had some difficulties with the libraries. Running make --makefile linux.Makefile returns an error since it can't find any library. You are including the libraries, right? Do they have to be in specific folders or how do I make the libs visible for compilation?

god, why didn't I see that, sorry about that.
As specified in the makefile comment, you need to install the following packages:
ncurses libavformat-dev libavcodec-dev libswresample-dev libswscale-dev libavutil-dev
Depending on your distribution, you need to add "-l/usr/include/ffmpeg" to CFLAGS after "-Ilib/include/"

So I was able to compile a binary, but noticed some issues:
FFmpeg throws an error when the file to be played isn't in the current directory
Trying to enable color just displays ANSI codes, both in virtual TTY and a terminal emulater (Konsole)
dithering doesn't seem to work
However, framerates are far better, and this is a massive improvement over trying to run the Windows version via Wine.

Yeah there are some oddities.
I tried running it on ubuntu/built in terminal and it did so with a framerate of ~25FPS (virtualized).
I also tried with many different console emulators but there were no changes.
However, when I ran it on my hosts arch, it actually ran in the desired Framerate (even (capped) up to 120FPS). I thought this was odd and when I tried running it on a virtualized arch, it still did so fine. This probably confuses me the most. But in any cases, it still seems acceptable.
I am still yet to find the reason why the ANSI codes are not working, but that doesn't seem like a huge deal.
The thing with the ffmpeg crash is probably also due to my crappy implementation of an asynchronous video decoder. Back when I initally wrote this, it was my first time using ffmpeg as a library, so I'll fix that aswell.
Thanks for getting back to me and helping out this project!

Haha yes, just for fun I made videos of the program playing the GTA 6 Trailer, once my compiled binary and once using Wine.  I expected wine to have at least like 5 fps but it seems like it doesn't even have 0.25 fps. that's actually hilarious.
It seems like a big improvement running at the intended refresh rate of the video.
There still seems to be a lot of flickering involved.
About earlier, you mentioned dithering would not work. Have you tried text dithering with key 'T'?
Because that did work on my test system.
Thanks for sharing the videos!

 Dithering did work when pressing T, but B (full pixel) also doesn't do anything


python3Packages.hikari: init at 2.0.0.dev119

Description of changes
Add new package.
Hikari is an asynchronous Discord API wrapper for Python.
I'm adding this application so I can package other libraries that depend on this package, such as hikari-lightbulb/tanjun/crescent.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 232557 run on x86_64-linux 1

4 packages built:

python310Packages.hikari-python
python310Packages.hikari-python.dist
python311Packages.hikari-python
python311Packages.hikari-python.dist

There are still some minor kinks with this PR, I'm marking this as a draft so it doesn't get merged before I fix them.

@tomodachi94 what are the remaining todos before we are able to get this merged?

@tomodachi94 what are the remaining todos before we are able to get this merged?

I'm not sure at the moment, I have much more time today so I'm taking a look as we speak.

Package now builds and is deterministic. Opening for review.

Result of nixpkgs-review pr 232557 run on x86_64-linux 1

4 packages failed to build:

python310Packages.hikari
python310Packages.hikari.dist
python311Packages.hikari
python311Packages.hikari.dist

If the points currently noted are fixed, it looks fine to me.

This new revision of the PR removes the complex update logic in favor of the fastly method mentioned here. As a result, this package is slightly simpler to maintain.


[Doc] cookbooks-partitioned page has link to an admin-api-topics page that doesn't exist

What issue do you find in Pulsar docs?
This page
https://pulsar.apache.org/docs/cookbooks-partitioned/
contains a link to this URL:
https://pulsar.apache.org/docs/cookbooks-partitioned/admin-api-topics
which doesn't exist - I get the following response if I open the URL:

Page Not Found
We could not find what you were looking for.
Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

Older versions of the documentation have a similar issue, e.g., last link on this page:
https://pulsar.apache.org/docs/2.6.0/concepts-clients/
What is your suggestion?
Reinstate the missing page or fix the link.
Do you have any references?
https://pulsar.apache.org/docs/cookbooks-partitioned/
Would you like to fix this issue?
Not sure how to.
Note

[X] I have researched my question.

@jon-hanson Thank you for reporting the link access issue. It has been fixed now. You can try it out.


cleanup: remove unnecessary, opinionated, and flatpak-available packages

I will say that I like xed, but that's my opinion

@m0ngr31 we could keep it? I wanted your review to make sure I wasn't going too far with these removals

Yeah I wouldn't mind if we left it just for my sake

@m0ngr31 will do, I'll add back the alsa package too just to be safe


Type error running "main(trn_df, val_df)"

`---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in
----> 1 main(trn_df, val_df)
10 frames
/usr/local/lib/python3.8/dist-packages/transformers/tokenization_utils_fast.py in _batch_encode_plus(self, batch_text_or_text_pairs, add_special_tokens, padding_strategy, truncation_strategy, max_length, stride, is_split_into_words, pad_to_multiple_of, return_tensors, return_token_type_ids, return_attention_mask, return_overflowing_tokens, return_special_tokens_mask, return_offsets_mapping, return_length, verbose)
427         )
428
--> 429         encodings = self._tokenizer.encode_batch(
430             batch_text_or_text_pairs,
431             add_special_tokens=add_special_tokens,
TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]`
**Im working with a "," seperated CSV file. all the previous steps where completed fine. the CSV file is using about 20.000 lines and i've tried using DialoGTP small and medium.
Any help would be much apreciated!**

Hello there! I ran into a similar issue.
It seems the "TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]`" thing appears if it finds empty cells inside of the CSV file.
I'd recommend checking for these empty lines and either delete them or add text to them

Hello, I also have the same problem, please did you solve it in the end. I looked at my original csv and didn't find any empty cell.
this is the csv i use,
https://www.kaggle.com/datasets/mitramir5/the-big-bang-theory-series-transcript?resource=download&select=1_10_seasons_tbbt.csv
and this is the only thing i edit, much thanks
https://colab.research.google.com/drive/1rYbCgFTQoAMOrGXWBIsXtj3H00akiGRK#scrollTo=k-Z-MF0dOQdC&line=20&uniqifier=1

i filled the empty cell by using this, and it works
val_df.fillna("fill NAN", inplace=True)

I also ran into this, and my fix was to use str(x) instead of x in tokenizer.encode(x) in function construct_conv()

str(x)

This is really helpful!
Use this berfore the 'CHARACTER_NAME' line when anyone has the same issue.
data.dropna(inplace=True)  data=data.reset_index(drop=True)


Add Money/Curency

Money/Currency
Money will work as a means of purchasing items from shops and npcs. It could possibly be used as a way to reward quests or be exchanged between players.

Implemented a way to keep track of player balance and a conversion table, but no shops exist.


Governance - Change proposals to time delay payouts

Pays out 10% month 1, then 30% over the next 3 cycles (months)
Description
Rather than paying out a proposal immediately when it is approved, we pay out up to 10% on approval, and the rest spaced out over the runtime of a proposal
This can also be the same feature as roles - which run for a while, but pay out evenly per month
Proposal types

we already have 3 types, but make types explicit by introducing a type (name) field

#79

Same as #79


update hadoop version  [fix nvidia-smi and netstat hang issue]

Move Nodemanager GPU information and Port information to a single thread.
Please check:  to get the source code.
https://github.com/qinchen123/hadoop/tree/new_branch-2.7.2

Coverage decreased (-13.2%) to 48.995% when pulling dc91e60417c749e78b2501f600fb178855097aa3 on updatehadoopverion into 66cdb1fcb7f4932b9d53a7f937c97ee39cc06ee6 on master.


sICX Management SCORE: i-score is not getting claimed

i-Score is accumulating but the SCORE is not claiming. It must claim, re-stake and delegate

I-Score was claimed in the first txn after block 33690003, as Suyog suggested would happen. 8150.985597817543708636 ICX was received here - https://tracker.icon.foundation/transaction/0x4d264680eeb77443bb4bfc35fe07da871ab8ba75b1bf5c58e4dd7c2d44cedc3d#events


Using slate for the API ?

The idea would be using slate to make the api easier to read.
The plan is :

[ ] convert api.md to slate format
[ ] put the html file in a gh-pages branch of mineflayer
[ ] have circle ci automatically update the html files

Some related links :

deploying slate
slate markdown (is there any relevant difference to github markdown ?)

I can't say no to better documentation.

What about https://github.com/jsdoc3/jsdoc ?

I think writing explicit documentation is much better. Comments in code tend to be very unfocussed and weird for documentation.

So slate would look like this http://rom1504.github.io/slate/

does it look better than https://github.com/andrewrk/mineflayer/blob/master/doc/api.md ?
got to figure out how to not put the slates file in the master branch but still put api.md in the master branch (see https://github.com/tripit/slate#getting-set-up)

see https://spockbot.readthedocs.org/ for inspiration

example of good looking doc http://nalgebra.org/doc/nalgebra/index.html

https://doc.rust-lang.org/book/documentation.html

done with docsify https://rawgit.com/PrismarineJS/mineflayer/master/docs/#/


Option to emulate incoming signals?

Is there an option to emulate incoming signals that change over time?
I'm looking to create a test for a PIO program that handles incoming dmx signals.
It's just a single GPIO but needs to change with specific timings irw the PIO  clock
I would be OK to devide this in multiple steps
But I can't find a way to continue the emulator once stopped

Thanks for the sample, really helps 👍🏻
A few follow-ups

for the pins returned by the incoming signals, do they match the GPIO pins exposed to the PIO program, or the CPU perspective ? e.g. in the below SM's program

sm_dmx_rx = StateMachine(
    machine_nr, dmx_receive, freq=1_000_000, in_base=Pin(7), jmp_pin=pin_dmx_rx
)

would I need the return Pin(7): '0b0100_000' or Pin(1) '0c0000_0001' ?

Do I need to set pindirs, or do all pins default to input ? ( and if to the same question  wrt to PIO or CPU relative )

Hi @Josverl.
Pin bases/sets are unsupported at this time - all pin values correspond directly to the physical GPIO numbers i.e. the CPU's perspective. Therefore, you would need to return a value of 7 instead of 1 for the sm_dmx_rx example above.
However, this is something I would like to add. If you are happy to continue I would really like to hear any feedback you have - thanks!

Hi @NathanY3G , thanks for the clarification.
For now the most important think is to understand what the current implementation supports, so i think adding that info though this issue of a .md file goes a long way.
Similar for the setting of the pindirs.
For my current scenrio its sufficient to know how a 0xe081 #  set pindirs, 1 behaves
just fyi
I'm working to use this library to add test / TDD to a micropython PIO function for a DMX receiver.
With these test in place I can then further debug / optimize the PIO code, and improve compatibility & stability.

Thanks for sharing. It is good to hear this project being used as per my original vision :grinning:
Best wishes with your DMX receiver - that sounds like a very cool project :sunglasses:

For now, I have taken your suggestion and added some basic information - see FAQ. However, I may update some of the existing documents too.


Add onimai ost by enako

Song Name
onimai ost
Artist Name
enako
Source
Youtube
Youtube Link
6OfPUWfbUFHdxrg0
Direct File Link
No response
Song ID
250123
Start Offset [ms]
No response
Extra
Created from Auto Nong.
Created for level: 88463014

accept
2024년 6월 29일 (토) 오전 9:33, auto-nong[bot] @.***>님이 작성:

Thanks for contributing!
Someone will soon review your request.
Here is the JSON result for the reviewer:
{
"name": "onimai ost",
"artist": "enako",
"source": "youtube",
"startOffset": 0,
"yt-id": "6OfPUWfbUFHdxrg0",
"songs": [
250123
]
}
To accept the request, a reviewer needs to write "accept".
—
Reply to this email directly, view it on GitHub
https://github.com/FlafyDev/auto-nong-indexes/issues/717#issuecomment-2197797441,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJQXB5RJMK4P6PD2NHZZRXLZJX6EBAVCNFSM6AAAAABKCWLKZSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOJXG44TONBUGE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yes, I am working on it.
2024년 7월 13일 (토) 오후 9:41, github-actions[bot] @.***>님이
작성:

This submission is stale because it has been open for 14 days with no
activity. If it is still relevant, please leave a comment and we will
reopen it.
—
Reply to this email directly, view it on GitHub
https://github.com/FlafyDev/auto-nong-indexes/issues/717#issuecomment-2226886747,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJQXB5SEPBN3K2ILBLR4CLLZMEN5ZAVCNFSM6AAAAABKCWLKZSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRWHA4DMNZUG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

reject
invalid YouTube link


Bug: You can create files with duplicate names, which then deletes the originanal file.

In the VZCode interface, naming file to a name that already exists works, and creates a new file in VZCode.

On the file system however it just ends up deleting all the contents of the original file, which goes against what the VZCode interface is saying

Ideally it should work like VSCode and not let you name something if it already exists, or just add some numeral at the end to mark it as separate and not break things.

Aha! Very nice observation. I'd definitely welcome this change. Thanks for spotting this!