500 error when fetching data for a specific resource in custom and default forms

This is the default Create OT form:

When creating a new Ot entry, the form fetches the Client and Importer data. They both perform the same GET request to http://localhost:3000/motor_admin/api/data/clients?filter[id][]=, which fails with status code 500 and the following error:
PG::UndefinedFunction: ERROR:  could not identify an equality operator for type json
LINE 1: SELECT DISTINCT "clients".* FROM "clients" WHERE "clients"."...

This is my Client model:
class Client < ApplicationRecord
  has_many :clients_users
  has_many :users, through: :clients_users
  has_many :certificate_importer_links, foreign_key: 'importer_id'
  has_many :certificate_revs, through: :certificate_importer_links
  has_many :ots, foreign_key: 'importer_id', class_name: 'Ot'

  validates_presence_of :name

  PRODUCT_JSON_SCHEMA = Rails.root.join('app', 'models', 'schemas', 'clients', 'address.json_schema').to_s
  validates :address, presence: true,
                      json: {
                        message: ->(errors) { Product.parse_errors(errors) },
                        schema: PRODUCT_JSON_SCHEMA
                      }

  def legal_address
    address_builder(address['legal'])
  end

  def factory_address
    address_builder(address['fabrica'])
  end

  def samples_address
    address_builder(address['muestras'])
  end

  private

  def address_builder(address)
    addr = address.slice('calle', 'altura', 'codigo_postal', 'piso', 'oficina', 'departamento', 'provincia', 'pais')
    addr['calle'] = "#{addr['calle']} #{addr.delete('altura')}"
    addr['calle'] += " (#{addr.delete('codigo_postal')})" if addr['codigo_postal'].present?
    addr['piso'] += 'º' if addr['piso'].present? && addr['piso'].is_number?
    addr['piso'] += ' piso' if addr['piso'].present? && addr['oficina'].blank? && addr['piso'].is_number?
    addr['piso'] += addr.delete('oficina') if addr['oficina'].present? && addr['piso'].present?
    addr.values.reject(&:blank?).uniq.join(', ')
  end
end

Judging by the error message, I believe it might have something to do with the fact that I have some JSON fields maybe? But I'm not sure about that.
Let me know if any more information is needed. Thanks!

Thanks @dantevvp, this issue is caused by legacy pg json data type - it breaks DISTINCT filter sql because pg doesn't know how to compare columns with this data type.
I released a patch to skip DISTINCT in case the table contains json columns.
But a better way to fix this would be to convert all json columns to jsonb which is a newer and better json data type which supports equality operator (needed for DISTINCT).

Thanks! Didn't know that about json columns


TSM model checkpoint download links are unavailable!

All the download links encounter the 404 Not Found error!

Hi @tonylins,
I have encountered with the same problem.  Could you share the checkpoints with us again?
Thanks for your wonderful work.

Hi, the download links have been fixed. Please check if it works. Thanks!

Hi, the download links have been fixed. Please check if it works. Thanks!

I have checked. The checkpoint links work now. Thanks for your time :)


fix: catch download errors

Description

Fix to catch download errors.

Related Issue

Motivation and Context

When a file to be downloaded doesn't exist, apm stops working.
How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

I fixed them.


URI-decode paths to search for

First of all, thank you for making this package!
While porting my website to JuDoc, I noticed that my résumé/index.html page was returning a 404. I added a unescapeuri here which I believe should address the problem.
I also changed the browser-sync to apply based on MIME type instead of only the html extension, but this is an unrelated change. I can separate it out if preferred.

Hello! thanks for this, MIME-type instead of extension makes a lot of sense, thanks, and ok for the  address too, all great ideas.
It seems that a test is failing though, I'll try locally to see if I can spot the problem

Oh it's a simple one, just add a résumé.html file in the dummies folder otherwise the end of the get_fs_path returns an empty string  (because isfile(fs_path) is false). Possibly you just forgot to add it in your commit?

Indeed, I've forgotten the file, thanks!
Porting is still in progress, but so far I have a pretty good impression of JuDoc (it's very fast and the live server is convenient). I will make sure to leave feedback after I finish porting the site!

Codecov Report

Merging #83 into master will increase coverage by 0.04%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #83      +/-   ##
==========================================
+ Coverage   92.69%   92.73%   +0.04%
==========================================
  Files           4        4
  Lines         178      179       +1
==========================================
+ Hits          165      166       +1
  Misses         13       13

Impacted Files
Coverage Δ

src/server.jl
91.86% <100%> (+0.09%)
: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 c2a7383...81551d0. Read the comment docs.


FollowPath json input

I'm having issues with a path file. the file was acquired using http://www.gpsies.com as recommended in the help-file.
That site is returning float point values with no trailing zeroes like
[{"location": "49.78837,9.93,191"]
therefore the location is not recognized anymore by the regex pattern in pokemongo_bot/__init__.py line 1220ff
this fixed it for me:
                "[-]?\d{1,3}[.]\d{2,7}", location_name
don't know why the digits after the floating point have to be in that specific format. one digit after the "." should also be ok.
digging in the blame history, aabeace9 by @Calcyfer was the initial author of the regex.
I had to format the *.js file to match the correct syntax of "location": "x,y,z" but that's another story.

Is this location [{"location": "49.78837,9.93,191"] the one you put on your path config? It's missing a closing curly bracket...

I extraced the line that caused the issue to boil down the problem.
Forgot to post the closing braket. Just put the line in a path.json file. It will throw the error.

I'm currently using FollowPath and it's working for me... Try to remove the 3rd set of numbers... The ,191...

The altitude is an optionsl return value.
As I said: the regex is not right. I will post a fix.

@ukos-git Good catch. I think [-]?\d{1,3}[.]?\d+ should do the trick. The front part before decimal should only have 1-3 digits (if I'm not mistaken latitude is [-80,80] and longitude is [-180,180]) while the # of significant digits can be [0,as precise as user wants]?

if you write it like that, a number like 0, 1, 2 etc. would not be recognized because you made the "." optional but still want to have at least one digit after that "." with the "+"

Yes my bad. [-]?\d{1,3}([.]\d+)? or yours should work then 👍

Anyone, please help. I'm not able to install this on windows.  I have all the files ready, but having trouble putting them in place.? :(

@Shrihan-P This is not the correct place to post a general "I can't install the bot" question. Read the docs or visit pokemongo-bot.slack.com

PR merged, closing issue


Move 'Columns' utility to layout

The Columns utility feels more of a layout module or it goes altogether as it hardly ever gets used?
@kllevin what do you think?

It does feel like a layout thing, but I agree it is hardly ever... I'll think about it a bit more.

Fixed in #56.


Develop

Hello! Good job. Can you add you changes to previous PR or close it and write here information about PR.

Ok I think it is ok. Sorry, this is my very beginning in open source world. Let me know if anything is missing 🐿

Thanks for you help!
Merged. But we release new version after all issues was done.


DenseOpticalFlow missing functions

http://docs.opencv.org/master/dc/d47/classcv_1_1DualTVL1OpticalFlow.html#gsc.tab=0
cv::Ptr<cv::DenseOpticalFlow> alg = cv::createOptFlow_DualTVL1();
    alg->setTheta(0.125);

The following code gives:
/home/linux/cl/test.cpp:119:10: error: ‘class cv::DenseOpticalFlow’ has no member named ‘setTheta’
     alg->setTheta(0.125);

DenseOpticalFlow is the base class for DualTVL1OpticalFlow, it does not have any of those member functions.
please instead use:
cv::Ptr<cv::DualTVL1OpticalFlow> alg = cv::createOptFlow_DualTVL1();
alg->setTheta(0.125);


fix href setter and no_scheme edge case

Fixes https://github.com/nodejs/node/issues/46755

Merging.

@anonrig Could you contribute the extra tests (ada_extra_urltestdata.json) to WPT at some point? I believe they'd be useful for other implementations as well.


add icomoon icon set

Thanks!

@nerdroid23 I'm seeing these icons don't support color filling. Can you update the icons to support this? Otherwise I'll need to revert this PR.

@driesvints sorry about that. I'll update the config file.

@driesvints I think that everything should be working fine now


Build error

Getting this build error when trying to build on develop branch. Sources are synced

C:\riot-androidsc\vector\build\tmp\kapt3\stubs\appfdroidRelease\im\vector\widgets\WidgetManagerProvider.java:17: error: cannot find symbol
IntegrationManager managerConfig) {
^
symbol:   class IntegrationManager
location: class WidgetManagerProvider

nwm :) think i need to build sdk to fix that )


Fix a Markdown syntax error

Summary
Rendered output was showing two backticks due to a lack of spacing between using and namespace.
Details
Solved by simply inserting a slash to separate using and namespace.

@brettcannon Same here! My C++ is a bit rusty after 15 years of web dev! :smile: Thanks for fixing the topic. We'll get this merged as soon as the live build completes and we get a green light on building this.


WIP: add batch mint functions and random draw function

Add function to batch drop NFT to a list of addresses
Add function to random draw from a list of addresses and batch drop NFTs

can estimate gas fee on local net

see if we can use an oracle to allow smart contracts to read from IPFS (chainlink?)

see if there is a simpler method for the random draw

mint on polygon, then optionally bridge to eth


fix FragmentMgr may return OK when some instance prepare failed

If fragmentmgr gets lock after instances prepare finished, it will retrun Status::OK instead of check prepare status of instance.

run buildall

run pipelinex

run pipelinex_p0

run buildall

run buildall

run buildall

run buildall


Share links

Use intents API for share on Facebook and Twitter, and copy to clipboard for sharing elsewhere.
The copy to clipboard option should not appear if JavaScript is not available.

This is done.


OpenGL: Environment adjustments not implemented yet

Related to https://github.com/godotengine/godot/issues/66455.
Godot version
4.0.beta (53d2a9acd)
System information
Fedora 36, GeForce GTX 1080 (NVIDIA 515.65.01)
Issue description
Brightness, contrast, saturation sliders and the color correction texture have no effect on the displayed scene.
Both glow and adjustments are enabled on the example below.
OpenGL

Vulkan

Steps to reproduce

Switch to the OpenGL driver in the Project Settings.

Make sure to start the editor with single-window mode enabled afterwards. This can be done by enabling Single Window Mode in the Editor Settings before changing the driver, or by opening the project in the editor directly with the --single-window command line argument.

Enable glow. Change brightness/contrast/saturation to make a visible difference in the scene.

Minimal reproduction project
test_opengl_glow_adjustments_editor.zip

I'm also looking forward to this one being solved


ninja-git: add package

This add ninja build system's git version package

We already have release package for ninja.


metadata broker feedback

Hi,
I have been playing around with the metadata broker API and wanted to report some feedback.
Starting with the API docs --> https://axiscommunications.github.io/acap-documentation/docs/api/src/api/metadata-broker/html/standard_topics.html
The payload doesn't start with the "data" property --> {
"data": {
"frame": {
"timestamp": "2023-03-08T09:00:19.320111Z",
"observations": [
but instead from the "frame" property
"frame": {
"timestamp": "2023-03-08T09:00:19.320111Z",
"observations": [
I see my P3265 fw 11.9.60 is detecting Human, Cars but also Face.
In my app I am parsing the json payload --> ** Message: 12:59:31.623: type Face: bottom 0.127300, left 0.208600, right 0.224700, top 0.098600
I have also been playing around with the 'BestShot' feature and uploading the base64 image to an S3 bucket for testing.
My P3265 is facing a display looping the same image, but the best shot seems to be inconsistent. Sometimes I get the back of my body, sometimes the front, sometimes just my face (even though my app is specifying only 'human' type and not 'face').
I am attaching a quick video showing the behavior after watching the same video twice and getting different results.
Thanks!
Marco
https://github.com/AxisCommunications/acap-native-sdk-examples/assets/11927582/4ef67c5b-a6c3-4f52-b509-e38c04957127

Hi @paromarc , thanks for your feedback! Will send this to the team working with this API.

Hi i will summarise the meting notes here for other that have the same questions,

The documentation was wrong and is now fixed. (The data field was removed)
You can get other classes than what the documentation example show
The best snapshot feature is not deterministic for tracks


Auto-import images into the embedded registry

Is your feature request related to a problem? Please describe.
k3s can load a bunch of resources from disk:

k8s manifests from /var/lib/rancher/k3s/server/manifests
Helm chart tgz can be hosted from /var/lib/rancher/k3s/server/static/charts
k3s required oci images from /var/lib/rancher/k3s/agent/images/k3s-airgap-images-amd64.tar.zst

With the new embedded registry, it'd be nice to also have a directory that can auto-load in miscellaneous OCI images (similar to k3s-airgap-images-amd64.tar.zst, but for arbitrary images). Especially in an edge/airgapped environment.
Describe alternatives you've considered
A crontab that finds files in a local directory and k3s ctr images import each TAR file 😓

The Spege embedded registry mirror only supports things that can be loaded into containerd's image store. It has no store of its own. Containerd does not, as far as I know, support storing arbitrary OCI artifacts in its image store.
Feel free to open an issue at https://github.com/XenitAB/spegel and/or https://github.com/containerd/containerd - once they support it, we can too.

Or perhaps I'm misunderstanding what you mean by "miscellaneous" / "arbitrary" OCI images. Are you just asking for periodic re-import of tarballs from the images directory, instead of only importing them on startup?
That's been asked for in the past, but hasn't been prioritized. Homebrewing something with ctr -n k8s.io image import is probably your best bet.

As an example, I want to deploy bitnami/zookeeper to k3s in an airgapped environment.

I can host the helm tgz in /var/lib/rancher/k3s/server/static/charts
I can auto-deploy the helm chart using a manifest HelmChart CRD in /var/lib/rancher/k3s/server/manifests

But I can't load the zookeeper.tar containing the container image into the new embedded registry, without manually running k3s ctr images import zookeeper.tar. It'd be great if I could drop in that zookeeper.tar to a directory on the k3s server, and it auto-loads that image into the registry

Thanks for the additional context. I'll leave this on the backlog.


[Feature]: Support React 19

Package Scope
@suspensive/react, @suspensive/react-query, @suspensive/react-await, @suspensive/react-image
Description

first, use https://www.npmjs.com/package/eslint-plugin-react-compiler
second, add React 19 as peerDeps

Possible Solution
No response
etc.
No response

@gwansikk @kangju2000 Let's do this
https://react.dev/blog/2024/12/05/react-19


GSLUX-655: Draggable 3d layers

JIRA issue
https://jira.camptocamp.com/browse/GSLUX-655
Description

[x] Enable dragging 3dlayer items in the layer manager
[x] Added missing 3layers (see fixtures)
[x] Added translations for new layers

NB: this PR need #79 to be merged first.
There is no Permalink to check if the layers have been reordered, but this can be tested with the Vue Devtools plugin by inspecting the content of the map store in the Pinia tab.

hello @AlitaBernachot. 3d layers shall not be draggable, I disabled the drag capability on purpose. 3d stacking does not work in prod, and furthermore there is not point in stacking 3d layers, they cannot be one on top of another.


SGDRegressor with Normalize and PowerTransformer

Wrong code
Required Changes:

you have utilized SGDRegressor instead of SGDClassifier
change the code appropriately for SGDClassifier


Could not find a declaration file for module 'accessible-astro-components'

When I use the library I get the following error, I think that the library is missing typescript type definitions.

Hey @Hugo-Persson! Thanks for submitting the issue 😄 I think you forgot to paste in the error? This library is currently build using vanilla JavaScript. I do not have the necessary knowledge (yet) to transform it to TypeScript.

The error is likely Could not find a declaration file for module 'accessible-astro-components'. I also ran into this a few days ago. I also didn't see the repo on definitelyTyped. After muddling around with the package declared as any, I decided to just write some. See this declaration file in an accessible astro fork
This gives Prop type safety and autocomplete but doesn't check children right now for things like Breadcrumbs and Accordian. I'd have to check with the Astro crew to see if that's possible as I couldn't get it to restrict return types.
I'm not 100% sure on on all the types yet. There are a few props that have default parameters that I have left as optional that might be better off required.
I'd be happy to submit a pull request here if you'd like to add it to this repo or rework it to submit to definitelyTyped.

Hey @david-abell, thanks for elaborating on this issue and taking the time to create an example. I'll have to take your advice on this one, seeing as I don't have much experience with TypeScript 🤔 Would reworking it to definitelyTyped solve the issue? Or would it be better to add further TypeScript support like how you did it in your fork?
Also, thanks for suggesting to do a pull request on the matter, I appreciate all the help I can get 😊 Ever since launching v2 of the Accessible Astro Starter I've been very short on free time. Let me know and then I'll assign the issue to you 😄

Happy to help Mark, these are great little components to work with. While I'm no typescript master myself, I would personally recommend adding the types to the repo rather than definitelyTyped as the user experience is easier by not having to also install the extra definitelyTyped module and the repo code impact is minimal. The types would need to be updated manually either in repo or through definitelyTyped and I think its easier to not forget about them if they are kept together.
I've done a quick test with a local repo and its just a matter of having the types as an index.d.ts file. This works with no modification to to the existing components. The downside to this approach (and in using definitely typed) is that because the types are not automatically generated, the types will need to be manually updated if components or component props are updated. That being said, they aren't complicated either.
It is also possible to move component Prop type declarations into the Frontmatter of the components themselves since they are .astro files. There isn't any difference for the consumer between the two approaches as far as I'm aware but this might be less brittle since it would be using the astro component function signature instead of redeclaring it. The only maintenance then should be ensuring interface Props has the same structure as {...} = Astro.props. Just to be clear, this will need to be done no matter which method we go with since Astro and typescript aren't repo dependencies, it just puts them more obviously next to each other this way.
I'll want to check with the Astro team before pulling the trigger on either of these methods since I can't find a code example but moving props to the components would look like this:
//add interface Props to Card.astro frontmatter

interface Props {
  url?: string;
  img?: string;
  title?: string;
  footer: string;
}

const {
  url = '#',
  img = 'https://fakeimg.pl/640x360',
  title = 'Default title',
  footer = 'Your name'
} = Astro.props

// index.d.ts

type CardComponent = typeof import("./Card.astro").default;
export const Card: CardComponent;

// instead of:

// no changes to Card.astro

// index.d.ts

 interface CardProps {
   url?: string;
   img?: string;
   title?: string;
   footer: string;
 }

 export function Card(_props: CardProps): unknown;

Let me know if you have a preference.

Hey @david-abell, first off, thanks for your extensive research and examples on the topic! You've made a clear understanding of what is possible 😊 Secondly, thank you for your patience! I know I'm not that quick to reply, all due to being short on free time lately, so I appreciate your help.
As for the options your suggesting, adding interface Props to each component seems to be the most straightforward solution. Just recently @shawninder did a PR for the Navigation.astro component in the Accessible Astro Starter, removing some of the TypeScript errors: https://github.com/markteekman/accessible-astro-starter/pull/55/files. It might be worth considering adding these type definitions to the


Error while runClient

I made a mod that adds a custom keybind but it doesnt work:
Error:
Caused by: org.quiltmc.loader.impl.entrypoint.QuiltEntrypointException: Exception while loading entries for entrypoint 'client' provided by 'rebug'

Caused by: org.quiltmc.loader.api.LanguageAdapterException: Class io.github.concrafter20.RebugClient cannot be cast to net.fabricmc.api.ClientModInitializer!

Here is the code from RebugClient:
package io.github.concrafter20;

import io.github.concrafter20.event.KeyInputHandler;
import org.quiltmc.loader.api.ModContainer;
import org.quiltmc.qsl.base.api.entrypoint.client.ClientModInitializer;
import org.quiltmc.qsl.base.api.entrypoint.ModInitializer;

public class RebugClient implements ClientModInitializer{

	public void onInitializeClient(ModContainer mod) {
		KeyInputHandler.register();
	}

}

KeyInputHandler:
package io.github.concrafter20.event;

import com.mojang.blaze3d.platform.InputUtil;
import io.github.concrafter20.screens.RebugMenuScreen;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.option.KeyBind;
import org.lwjgl.glfw.GLFW;

public class KeyInputHandler {

	public static final String KEY_CATEGORY_REBUG = "key.category.rebug.rebug";
	public static final String KEY_OPEN_MENU = "key.rebug.open-menu";

	public static KeyBind openMenuKey;

	public static void registerKeyInputs() {
		if (openMenuKey.wasPressed()) {
			MinecraftClient.getInstance().setScreen(new RebugMenuScreen(MinecraftClient.getInstance().currentScreen));
		}
	}

	public static void register() {
		openMenuKey = KeyBindingHelper.registerKeyBinding(new KeyBind(
				KEY_OPEN_MENU,
				InputUtil.Type.KEYSYM,
				GLFW.GLFW_KEY_Z,
				KEY_CATEGORY_REBUG
		));

		registerKeyInputs();
	}
}

And here is quilt.mod.json
{
	"schema_version": 1,
	"quilt_loader": {
		"group": "io.github.github",
		"id": "rebug",
		"version": "${version}",
		"metadata": {
			"name": "Rebug",
			"description": "A cool mod for debug information",
			"contributors": {
				"RaphtikGHG": "Owner"
			},
			"contact": {
				"homepage": "https://example.com/",
				"issues": "https://github.com/QuiltMC/quilt-template-mod/issues",
				"sources": "https://github.com/QuiltMC/quilt-template-mod"
			},
			"icon": "assets/example_mod/icon.png"
		},
		"intermediate_mappings": "net.fabricmc:intermediary",
		"entrypoints": {
			"init": "io.github.concrafter20.Rebug",
			"client": "io.github.concrafter20.RebugClient"
		},
		"depends": [
			{
				"id": "quilt_loader",
				"versions": ">=0.19.1"
			},
			{
				"id": "quilted_fabric_api",
				"versions": ">=7.0.2"
			},
			{
				"id": "minecraft",
				"versions": ">=1.20"
			}
		]
	},
	"mixin": "example_mod.mixins.json"
}

Any idea how i can fix this?

Sorry for the delay - you'll need to change client to client_init. (client is for fabric-loaders client initializer).

Tbh, this seems a little bit unintuitive when working with a fabric library (I thought they were supposed to be backwards compatibile?), but OK then.

Tbh, this seems a little bit unintuitive when working with a fabric library (I thought they were supposed to be backwards compatibile?), but OK then.

It's not unintuitive, you can just open the ClientModInitializer class and find that the key is "client_init".

It's backwards compatible with fabric in the sense that you can use net.fabricmc.api.ClientModInitializer with the fabric entrypoint client - the QSL entrypoint is separate.

Oh there was a quilt and fabric mod json. Deleted the quilt one and it worked just fine


Video upload handling

Description
Makes changes to how multer handles video files.
Adds full handling for new video submission
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update

Change Status

[x] Complete, but not tested (may need new tests)

How Has This Been Tested?

[x] Extensive manual testing (needs written tests)

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] There are no merge conflicts

 Change backend handling of user video uploading


fix(orchestrator): fix issues with extendable workflow execution form

Resolved the following issues:

enabled validation using customValidate, and replaced extraErrors with getExtraErrors, since extraErrors is supposed to be populated when running onSubmit, and that isn't exposed to the user. Added busy handling while calling getExtraErrors.
moved FormComponent to a separate component, to avoid buggy behavior and code smells with component generated in a different component.
update formData on each change instead of when moving to next step, to avoid data being cleared.
fix bug in validator - it only worked in first step, because of issue in @rjsf form
removed unnecessary package json-schema that was used just for lint error, and fixed the root cause of lint error when importing types from @types/json-schema

@mareklibra PTAL


concurrently: move out of nodePackages

Description of changes
related to #229475
cc @jpetrucciani who originally packaged this in https://github.com/NixOS/nixpkgs/pull/143447

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

oh, TIL pnpm_8.fetchDeps! that's super handy


DOC: signal.hilbert: Terminology issue

https://github.com/scipy/scipy/blob/87c46641a8b3b5b47b81de44c07b840468f7ebe7/scipy/signal/_signaltools.py#L2289
The function is called "hilbert"  -- one thinks this function only computes the Hilbert transform.
For example, the function "sum" -- one thinks the function output is the sum of its inputs.
But the "hilbert" does the Hilbert Transform and more. It computes the analytic signal.
So I propose two options:

This function should be rename "analytic".
The function needs further documentation to say, "hilbert" computes the analytic signal, in which the Hilbert transform is an intermediary step.

The wikipedia reference, which the function cites, clearly dictates the Hilbert transform being a part of the process in calculating the analytic signal.

cc @DietBru @yagizolmez

You are correct with your observation about the terminology, @a-drenaline. The function name is, as so many other inconsistencies, was established by Matlab and is used by many other signal processing libraries. IMO, having similar function names with the same functionality in different libraries is a great boon, which outweighs the naming inconsistencies in this case. Furthermore, renaming a function, which was added to SciPy over 20 years ago, would probably break the code of many people.

The function needs further documentation to say, "hilbert" computes the analytic signal, in which the Hilbert transform is an intermediary step.

To be knit-picky: If you look at the source code, the hilbert transform is not calculated as an intermediary step, but is just a part of the resulting analytic signal. If you ignore the function name, the  documentation seems quite consistent to me in that regard.
Does this answer your questions, @a-drenaline? If so, feel free to close this bug.

You are right to call out MATLAB. They do the same thing.
https://www.mathworks.com/help/signal/ref/hilbert.html
However, they are a company and own the code they write, thus they are likely to resist making changes.
This codebase, unlike MATLAB, has the opportunity to take feedback with higher likelihood of implementation.
I propose applying option 2 in this way:
Remove the Wikipedia article as the reference. Since as you mentioned, the Hilbert Transform is not computed in the code at all.
Add the documentation found in the MATLAB page, which explains their implementation of filtering out the negative frequencies, which is akin to the SciPy implementation.

Would you care to do a pull request, @a-drenaline?
Note that the formula in the hilbert docstring exactly formulates those steps from Matlab. Though there is no mentioning that it is the utilized calculation method.

Agreed, the last part of your sentence does need to be in the update.
I don't see the pull request option when I click on the line in question.
In summary I proposed the following change
New Line 2289:
Compute the analytic signal, by filtering out the negative frequencies of
the input signal. See the Notes section for derivation.
On Sun, Aug 11, 2024 at 10:59 AM Dietrich Brunn @.***>
wrote:

Would you care to do a pull request, @a-drenaline
https://github.com/a-drenaline?
Note that the formula in the hilbert docstring
https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.hilbert.html
exactly formulates those steps from Matlab. Though there is no mentioning
that it is the utilized calculation method.
—
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/issues/21357#issuecomment-2282840017, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AURM5LRLAOWZIPDAFUJLVGLZQ6RABAVCNFSM6AAAAABMJ54TNKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBSHA2DAMBRG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

@a-drenaline if you would like to make a pull request, we have quite extensive docs at https://scipy.github.io/devdocs/dev/contributor/development_workflow.html (and for basic things like submitting a pull request, the general GitHub docs are also very useful). For a simple change like this, the easiest set up may be to use codespaces.
If you would prefer not to do that though, I'm sure someone else can submit the patch on your behalf.

I tried pushing from an HTTPS clone.
It asks me for credentials. I use the credentials to login to Github.com, but it fails.
What are the right credentials?

You'll need to make a fork of this repo, then clone that fork and make your changes there. Once you've pushed to your fork, you can make a pull request.

I did.
I am at the last step where I need to push the change.

Ah, I see. This can also be caused by having 2FA enabled. There are two workarounds, which you can read here.
https://stackoverflow.com/questions/17659206/git-push-results-in-authentication-failed
I personally use SSH based authentication, I find that works better.

I tried the SSH approach, and it's not any better

You are trying to push to this repo. That is not possible. You need to use your own fork.

git remote rename origin upstream
git remote add origin {URL of your fork}

Then pushing to origin should work.

Type git remote -v to see which remotes you have already. What you need is to push your branch to your scipy fork and send a pull request from the fork to the main scipy/scipy repository.

If origin and upstream are both pointing to the main scipy repo when you run git remote -v, you can fork the repo following https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo, git remote rm origin, and git remote add origin {your fork}.
In your post you wrote git remote add origin {your branch}. A branch is not the same as a fork, and the GitHub page linked in this comment should help explain that.


Size slider isnt right

The Chore
Not sure when it happened but something isnt right with the slider.

It always appears to be full
Tasks

[ ]
[ ]

Additional details / background info

Slider is right now


SqLite Databases can not be erased from the maintenance

The SQLite provider now pools connections, improving connection speed significantly but keeping connections open. You can disable pooling by adding Pooling=false to the connection string or calling SqliteConnection.ClearAllPools() at the point where you want them to be closed. refer to this git issue for more info.

Wouldn't it be better for us to keep the pooling active (to improve connection speed) and instead call clearpool() before we try to delete the database? As there is only one function that could trigger a database deletion from the UI this should be possible right? 🤔


License missing in repo

The mermaid-live-editor repo is missing a license file. Perhaps copy from: https://github.com/mermaidjs/mermaid.cli/blob/master/LICENSE

@knsv : Thanks for merging the PR.


Abort the script if OpenVZ or LXC

Hello @angristan , Your script failed to install WG on Debian 11 LXC container VPS saying "LXC is not supported (yet)." https://github.com/Nyr/wireguard-install script installed it apparently without issue. Can you please mirror part of their process in your script to make it working or temporarily link to their script (or other noob friendly way to setup it) so people does not face dead end? Thank you


install_sct: configurable installation type

Now we can easily test releases and in-place (within git) installations if needed:
[...] SCT_INSTALL_TYPE=in-place ./install_sct [...]
[...] SCT_INSTALL_TYPE=package ./install_sct [...]

I suggest using local instead of in-place. It is commonly used to describe install from local package

I'm pretty sure that local is definitely used in this context.

When installing a package with yum localinstall.


Typo in error message

.. and removing some trailing spaces plus adding blank line at the end of file (thx vs code)

We take this as reminder to spell check all files.
Thank you!
[PR is outdated and closed]


buck2's MSVC support doesn't understand Visual Studio Build Tools installation

When running buck2 build ://main from a freshly initialized version of the hello_world example, I get the following error:
$ buck2 build ://main
...
vswhere.exe did not find a suitable MSVC toolchain containing cl.exe, lib.exe, ml64.exe

However, upon running vswhere.exe manually, I get the following output:
$ & "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" -nologo -products "*" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64
... output omitted for brevity ...
installationName: VisualStudio/17.6.5+33829.357
installationPath: C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools
installationVersion: 17.6.33829.357
productId: Microsoft.VisualStudio.Product.BuildTools
... output omitted for brevity ...

One will notice that I am passing -products "*" to vswhere, however this is not done by buck2, which means that a Build Tools only installation of Visual Studio will fail to be detected correctly even if the required component is correctly installed.

I can fix this on Monday.

I inadvertently omitted that flag when I ported the vswhere logic from cc in 1fba8bc86a6695c127ce7434a4b3e4e5160253d4. cc passes -products "*" here: https://github.com/rust-lang/cc-rs/blob/1.0.81/src/windows_registry.rs#L344-L345 — makes sense to match in Buck2.


Update Tesuji File Location Link

From https://github.com/omisego/elixir-omg/blob/develop/docs/tesuji_blockchain_design.md -> https://github.com/omisego/elixir-omg/blob/master/docs/tesuji_blockchain_design.md

Thank you for noticing and fixing! :bowing_man:


Puzzle creation failure should give user a clear signal of failure

See title. Ideally, there should be some message about why it failed (duplicate puzzle name, duplicate puzzle url, duplicate slack channel etc)

I think the main things remaining are adding error handling for the Slack and Google sheets APIs (getting throttled, API servers down, etc) and we can close this.

Note to self: ref: 076c0072 (see TODO(erwaman)s in hunts/views.py)


Release a new version

I'm currently using {:yaml_elixir, "~> 2.0"} in my mix project, so I have to use {:kazan, git: "https://github.com/sambooo/kazan.git", branch: "master"} for dependency resolution to work. Please do a new release so I can remove this constraint.

Oops, I actually meant to (and thought I had) change the yaml_elixir dependency to ~> 1.3 or ~> 2.0 before I released 0.7.  Hence I wasn't in a rush to release that work from your PR.
Obviously forgot to do that though, so I'll get a release out just now.

Thank you very much!


cluster update with ebs_volume_id

I have an existing volume, so in the config of cfncluster I specify ebs_volume_id. Works without problems, it is mounted on /home/ubuntu/shared as I specified in the config. But then when I want to cfncluster update I get:
Updating: cluster
Volume vol-xxxxxxxx is in state 'in-use' not 'available'

Is that a bug or a feature? How should I get around that?

it's a bug, it checks the attachment state of the volume when you do an update. You can try turning off config sanity config_sanity = false in the cfncluster config.

Thx. The workaround works.

Release 2.8.0 is out (and 2.8.1 too). One of the enhancements of the 2.8.0 is: "Renewed user experience and robustness of cluster update functionality" and this failure during the update will be prevented.
I'm going to close this issue, feel free to open a new one if you encounter similar problems.


spec.grafanaContainer.baseImage unused

We've noticed, that the field spec.grafanaContainer.baseImage goes unused during reconciliation of the Deployment.
Although, it is possible to override the image via
spec:
  deployment:
    spec:
      template:
        spec:
          containers:
            - name: grafana
              image: harbor.registry/grafana:1234

But that's kinda a lot of overhead, just to overwrite the image. So I hope we can keep the baseImage parameter (as it's already in the current v4 as well) :)
There's also the initImage parameter right next to it. But I guess that's obsolete now?

Hi @tamcore , first of all thanks allot for trying out version 5 of the operator.
To be honest I had forgotten that we still had the grafanaContainer field in the spec and my guess is that it's a copy from v4. As you point out initImage isn't used any more.
My initial thought was that we should remove grafanaContainer, since everything is "supposed" to be done through the deployment value. But as you say at the same time we want to be as user friendly as possible, but as always the question is where do we draw the line.
If we start to add a bunch of value to GrafanaContainer the whole thing of not forcing us to make changes due to specific needs fails fast.
So my suggestion is that we instead of using grafanaContainer we change it to grafanaImage or grafanaBaseImage both works for me and we write a good comment on-top of the struct to show the users what it does.
Then the question is how do we handle if someone defines both?
spec:
  grafanaImage: harbor.registry/grafana:1234
  deployment:
    spec:
      template:
        spec:
          containers:
            - name: grafana
              image: harbor.registry/grafana:1234

Should we make the deployment to take precedence or the other way around? Or should we just through an error and say we won't deploy your grafana instance since you define both of them?
In some ways I think an error and a good status message to the end user might be better.
Which way do you feel is best?

Hi @tamcore ! Thanks for writing up this issue. From my perspective, I think we should drop any operator-specific overrides through custom CR fields in our CRDs, and default to using the deployment/resource spec override per resource as we have it right now on v5, (where the underlying resource spec is open for override through a struct in the CR).
I'd be hesitant to repeat the mistake (it's a mistake in hindsight) from v4, where we implemented bespoke override fields. Which, IMHO, overloads the operator with unnecessary code.
I would agree with Edvin on this. We want v5 to be the most mature version of the operator yet, and with that we really would prefer to avoid adding logic that duplicates a feature that we already have. Even though, unfortunately, it will mean a not-so clean migration, such as in this case.

That sounds great @tamcore , thanks allot.


About implementation details in training for super resolution task

Hi,
I have some questions when I try to re-produce the training for the super-resolution task:
In 4.1 the Super-resolution subsection writes,

the BayesCap is trained on ImageNet patches sized 84 ×84 to perform 4× super-resolution

In the Implementation Details subsection, it writes

a batch size of 2 with images that are resized to 256 × 256

I wonder what I should put for the ? in this line: train_dset = ImgDset(dataroot='./xxx', image_size=(?,?), upscale_factor=4, mode='train') And it is 4 or 2 during training for the batch size (since there is a commented line writes 4 for the batch size in .ipynb).
Thank you.

Hey @xuanlongORZ,
You may choose to use batch-size of 2,4, or 8 depending on GPU you may have access to. In general smaller batch-sizes lead to slight boost in performance as they yield sharper images in super-resolution.
For the ? please use 84 (as mentioned in the readme the SRGAN base code was picked from https://github.com/Lornatang/SRGAN-PyTorch) It provides access to ImageNet patches of 84x84, on which the training was done. However, for evaluation, you could pass other dimension images, since the architecture is fully convolutional.


chore(config): better support NGX_WASM_CARGO=0

The existing NGX_WASM_CARGO=0 variable already allows skipping the Cargo step for building ngx-wasm-rs during ./configure, but it didn't set the defines needed for each VM configuration.
This commit adds the defines when NGX_WASM_CARGO=0 is used, allowing the user to build ngx-wasm-rs separately if wanted, passing its header and library locations via NGX_BUILD_CC_OPTS and NGX_BUILD_LD_OPTS, or via --cc-opts and --ld-opts flags in the nginx configure script.
Includes tests and documentation.
(Nevermind the branch name, the approach taken changed halfway through :laughing: )

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 91.117%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
7580

Relevant Lines:
8319

💛  - Coveralls

Merged but I moved the documentation to INSTALL.md since it is end-user facing!


Time map batch

Add quick time-map-batch method

You also need to deal with RPM limits. Can you add a function which will limit SDK calls per minute?

You also need to deal with RPM limits. Can you add a function which will limit SDK calls per minute?

Users may opt-in by passing int a RateLimiter instance to the client which handles all rate limiting for all requests, including this one.

You also need to deal with RPM limits. Can you add a function which will limit SDK calls per minute?

Users may opt-in by passing int a RateLimiter instance to the client which handles all rate limiting for all requests, including this one.

Could you add an example how to use this new time map with a rate limiter?


hed.TDTM_Contact: data changed by trigger for field Email: invalid email address

Note: FOR INTERNAL USE ONLY. For support questions, please use the EDA Chatter group in The Power of Us Hub.
For feature requests, please use the Ideas tab in The Power of Us Hub.

Do you want to request a feature or report a bug?
Bug
What is the current behavior?

We have installed K-12 Architecture Kit from the Github repository.
the error appears when creating a new contact ** (Studen, Facultaty / Staff, Guardian) **
Review the errors on this page.
hed.TDTM_Contact: data changed by trigger for field Email: invalid email address: (value has been hidden)

I have found a solution that fixes the error.
in EDA SETTINGS / Accounts and Contacts / disable: Disable Preferred Email enforcement
then Run Cleanup.
When creating a new contact the error stops appearing and creates the contact for me.

@jacebryan - Do we want to get this on the Hub first? Or do you want us to lurch it and queue up for investigation?

@jacebryan - Do we want to get this on the Hub first? Or do you want us to lurch it and queue up for investigation?
hi @jacebryan I don't know how to answer these questions.
but if it is being presented at a general level, the decision must benefit the majority.
Thanks for being tempted to issus

Hi @aligeez @EdwinFdoGarcia - @jacebryan was on PTO last week. For now, let's keep the conversation on the Hub and re-open this should a bug be determined. On the surface, this appears to be "as designed" behavior for a contact imported without using the Preferred Email functionality.


Trademark Infringement

Good afternoon,
The asset used as the logo for this project on the Traefik community page, hosted here is a registered UK trademark with registration number UK00003584429.
Please remove our trademarked asset from this project.

Woaw my bad, I will do that ASAP


first_phase is a required argument, but can be inherited from another rank profile

I think the first_phase argument should be optional if inheriting another rank profile. Perhaps it can just always be optional, although it may require some research to figure out if that is always ok
        name=f"{rank_profile.name}_sim",
        inherits=rank_profile.name,
        summary_features=["quantized"],
    )

Yes, it can always be optional


Empty generic parameter clause produces no diagnostic

Issue Kind
Bad Diagnostic Produced
Source Code
// Can be parsed and produces no diagnostics.
func f< >() {}

// Can be parsed. Printing the node or asking for the diagnostics leads to a crash.
func f<>() {}

Description
In both examples, the "old" parser reports "Expected an identifier to name generic parameter" on > which is helpful, but not the real issue.
Best would be a message like "Generic parameter clause cannot be empty" or similar. It should be reported in both examples. The ParseDiagnosticsGenerator should not crash in the second example.

rdar://107514649


FCS_COP.1/KAT -- CC Compliance

Should use CC language: to wit
The TSF shall perform [cryptographic key agreement/transport] in
accordance with a specified cryptographic algorithm [assignment:
cryptographic algorithm] and cryptographic key sizes [assignment:
cryptographic key sizes] that meet the following: [assignment: list of
standards].
With the table columns adjusted accordingly.

Language fixed. Eventually this should become a FCS_CKM since it is about keys and not really an operation.


bitfields: enhance formatting

currently BitFields are formatted as {:#b} but that may not be the most ergonomic option.

display values in the "most readable" format but that's sort of arbitrary => binary as default; hex for multiples of 8?
extra bonus points for underscores (readability++)

note:
you'll probably have to update en/decoding tests

This ties into the planned support for formatting modifiers like {:x}, so we have to figure out that plan first.

After RFC #270 bitfields are formatted using decimal notation by default. Other notation can be applied using display hints. Now that we have display hints I don't think we have to apply smart formatting by default (when no hint is specified) so I'm going to close this issue.

After RFC #270 bitfields are formatted using decimal notation by default. Other notation can be applied using display hints. Now that we have display hints I don't think we have to apply smart formatting by default (when no hint is specified) so I'm going to close this issue.


Avoid redundant full-cube-passes when region submasking

Region sub-masking has been using minimal_subcube, which shouldn't be necessary b/c we already downselect to the minimal bounding box.
Also, it was creating 3D masks when only 2D is needed - the broadcasting might therefore not have been done lazily.

Codecov Report

Merging #801 (28ccee8) into master (7d0b9c7) will decrease coverage by 0.03%.
The diff coverage is 16.66%.

:exclamation: Current head 28ccee8 differs from pull request most recent head a3fd542. Consider uploading reports for the commit a3fd542 to get more accurate results

@@            Coverage Diff             @@
##           master     #801      +/-   ##
==========================================
- Coverage   77.94%   77.90%   -0.04%
==========================================
  Files          24       24
  Lines        5853     5856       +3
==========================================
  Hits         4562     4562
- Misses       1291     1294       +3

Impacted Files
Coverage Δ

spectral_cube/analysis_utilities.py
83.83% <ø> (ø)

spectral_cube/spectral_cube.py
76.59% <16.66%> (-0.16%)
:arrow_down:

Continue to review full report at Codecov.

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

Ready for final review


For motion visualization in Saba

Thanks for your great work!
I followed the script generating VMD file and I put it into Saba for visualization, but the character did not move, only the camera's perspective changed. How can I visualize the character's motion as well? Can you provide a script to generate a VMD file with motion?

Hi, thank you for your interest in our work.
I'd like to clarify that we don't generate motion VMD files in our work and we just use the raw VMD motion files directly. You can apply for the dataset through e-mail and you will find a file with download links to download the raw VMD motion files.


react-native run-android gives error Cannot find module '@babel/core'

I tried to eject to build APK on windows machine.
eject failed with error "Can not delete node_modules....The directory is not empty"
After that I am stuck,

eject does not work anymore. I get error eject script not found.
react-native run-android gives error
Cannot find module babel/core
npm start gives error
Cannot find module 'babel/core'

Environment
Please run these commands in the project folder and fill in their results:

npm ls react-native-scripts: `-- (empty)
npm ls react-native: `--<EMAIL_ADDRESS>npm ls expo: ``-- (empty)
node -v: v8.10.0
npm -v: 5.6.0
yarn --version: 1.6.0
watchman version:

Operating system: Windows 10
Phone/emulator/simulator & version: Motorola X Play - Android 7.1.1

I tried reinstalling babel core , didn't help

Hi @p-sheth  - have you tried totally clearing away your node_modules and reinstalling them?

After reinstalling node_modules, Metro bundler throws error while running on Android:
Metro Bundler ready.
Loading dependency graph, done.
error: bundling failed: Error: Couldn't find preset "babel-preset-react-native-stage-0/decorator-support" relative to directory "D:\dev\bhagvatgita"
at D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\options\option-manager.js:293:19
at Array.map ()
at OptionManager.resolvePresets (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\options\option-manager.js:275:20)
at OptionManager.mergePresets (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\options\option-manager.js:264:10)
at OptionManager.mergeOptions (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\options\option-manager.js:249:14)
at OptionManager.init (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\options\option-manager.js:368:12)
at File.initOptions (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\index.js:212:65)
at new File (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\file\index.js:135:24)
at Pipeline.transform (D:\dev\bhagvatgita\node_modules\babel-core\lib\transformation\pipeline.js:46:16)

@p-sheth this happened to me today, fixed by this react-native/issues/15545


Particle autoAlpha/autoScale duration is half the specified duration

Phaser version(s): 2.6, 2.7
Live example: http://codepen.io/samme/pen/OmPdwL
Reproduce:

Create an emitter
Call setAlpha or setScale with a duration, e.g., 10s
Start the emitter

What should happen: Particle alpha and scale tweens complete after duration has passed
What happens instead: Particle alpha and scale tweens complete after about duration/2 has passed

update is called twice on the Particle per frame.

Inside update the varibles _s and _a, which are used as index inside scaleData and alphaData, are decremented

Phaser.Particle.prototype.update = function() {

    if (this.autoScale)
    {
        this._s--;

        if (this._s)
        {
            this.scale.set(this.scaleData[this._s].x, this.scaleData[this._s].y);
        }
        else
        {
            this.autoScale = false;
        }
    }

    if (this.autoAlpha)
    {
        this._a--;

        if (this._a)
        {
            this.alpha = this.alphaData[this._a].v;
        }
        else
        {
            this.autoAlpha = false;
        }
    }

};

So in every frame, the variables are decremented twice and the animation gets advanced by two frames.
I see two possible solutions:

make sure update is only called once.
calculate indices based on the frame number or elapsed time.

I'm not sure which one is the better solution because I'm not familiar enough with the phaser internals.

Phaser.Particles#update seems redundant. Odd thing is an emitter with exists=false gets updated via Stage but not by Particles.
This way skips Particles#update: http://codepen.io/samme/pen/oWbwwM


Forbid descheduling when descheduler.alpha.kubernetes.io/evict=false

I'd like to propose a change to the way descheduler.alpha.kubernetes.io/evict is handled. Currently it is only checked for presence of this annotation, in which case eviction is always allowed, no matter if anything else prohibited it.
I propose to change the behavior so that the value of the annotation is checked as well. In case it is false, it should prohibit descheduling in any case. In case it is true, it should allow descheduling in any case.
In my case, this would be useful to circumvent cases like https://github.com/kubernetes-sigs/descheduler/issues/335, which I'm running into right now. There are likely many other cases where descheduling is also not a good idea, so allowing to disable descheduling on a pod/deployment/sts basis without touching pod priorities would be very helpful.

Adding an annotation to forbid eviction was discussed in https://github.com/kubernetes-sigs/descheduler/issues/329, and the conclusion was that filtering pods by custom priority thresholds was a better approach. Does this apply to your use case?

The recommendation is to use a PriorityClass to achieve this. Also, starting with k8s 1.19 a non-prempting PriorityClass can be created.
https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
Please feel free to re-open if you'd like to discuss further.
/close


ANDROID: GetPhotos doesn't work because of groupTypes

Hello,
The lib doesn't work on Android because GroupType default value is set here in JS https://github.com/react-native-community/react-native-cameraroll/blob/1e37b294269eeb7175a9d952619fb22c4d70821d/js/CameraRoll.js#L167
but in Android if there is the groupType params a exception is thrown
https://github.com/react-native-community/react-native-cameraroll/blob/1e37b294269eeb7175a9d952619fb22c4d70821d/android/src/main/java/com/reactnativecommunity/cameraroll/CameraRollModule.java#L220
The bug appears when i upgrade from 1.0.3 to 1.0.4.
I can make a PR to resolve this issue if you want. That is the best solution? ignore the groupType in Android? or something else?

Hi thanks for reporting, I'm trying to reproduce on my side. For some reason it is not yet happening on the tester project and I'm looking into why this is.

@JulienUsson I would have welcomed your PR (and will very much welcome them in the future). I needed to figure out how this bug entered the release in the first place, as it should have failed in one of tests before making it to npm. Feel free to comment on #57 for now.


[Feature Request] It'd be nice if there were an equivalent to macwires wireWith method

https://github.com/softwaremill/macwire#factory-methods

This feature is added in 0.0.9, check https://github.com/yakivy/jam#brew-function


Choose unit for analyses automatically

Currently the unit of the first analysis is used. Find optimal unit for multiple analyses.

The average now chooses an optional unit through the suggest_length_unit function of SurfaceTopography's container. I guess this issue generally applied to what the user sees which may actually be arbitrary combinations of topographies and surfaces.

I am closing this since it is partially implememted.


[Request] Option to make tab favicons full color / not washed out

Find it a bit difficult to tell between certain icons at a glance with them so washed out. Couldn't immediately see where to adjust this myself in the CSS

Setting icon mask in this rule should include all these browser specific favicons.
.tab .favicon .favicon-default::before {
    filter: grayscale(85%) invert(75%);
}

Its already included in the tst css but rendered useless once mask variable is removed. You can replace the var(---extension-icon-mask) with a correct mask value here.

.tab .favicon .favicon-default::before {
    filter: grayscale(85%) invert(75%);
}

Perfect, that did it! Thanks.


Added more functionality to tests

I have redesigned the tests to test makepackage end to end.

I have added all necessary changes requested. Kindly review and let me of any feedback.

Error has been fixed, kindly confirm and let me know, so I can go ahead and make the other changes.

I think you have a valid point with the user part because users would not be interacting with the test files directly but I think it might help contributors understand how these tests work and the type of arguments that are passed in each test function when reading the code.

Hi Patrick,
I have just two minor comments, and we're there. One idea, though, for the
next task. Look:
[image: image.png]
Perhaps we should get the return code from the last two commands, in order
to check if the tests pass just fine. Currently, even if they fail, we do
not get any errors. I think both commands return 0 if everything is fine,
but this would need to be checked.
But I think we should work on this in another branch, however. What do you
think? I know I tend to work using big branches while it's better to keep
the smaller, just like tasks. So, what do you think? Next branch  = the
stuff ↑?
All the best,
Marcin
niedz., 9 lip 2023 o 23:03 Patrick Boateng @.***>
napisał(a):

I think you have a valid point with the user part because users would not
be interacting with the test files directly but I think it might help
contributors understand how these tests work and the type of arguments that
are passed in each test function when reading the code.
—
Reply to this email directly, view it on GitHub
https://github.com/nyggus/makepackage/pull/25#issuecomment-1627823875,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJOLHTYPO3JQD3UXD6QCGW3XPMMAPANCNFSM6AAAAAAZFPV2NI
.
You are receiving this because you commented.Message ID:
@.***>

Hello Marcin, I am not able to view the image in the attached comment above, would you kindly add it again.

Okay, so a subprocess.CalledProcessError exception is raised when any command has a non-zero return exit. Kindly check the run_cmds function, and you will notice check=True, that is what does the checking of the commands output.


Saving the current window temporarily moves it from "Current Window" slot

After saving the current window the window summary will move from the "Current Window" section to "Other Open Windows" section for the time the popup remains open.  Goes back to proper position as Current Window next time the popup is opened. Minor issue but hopefully an easy fix.

Also reported by @killian


[master] Auto-update dependencies

Produced via:
./hack/update-deps.sh --upgrade && ./hack/update-codegen.sh
/assign grantr lberk n3wscott
/cc grantr lberk n3wscott

/retest

/retest

/lgtm

/retest

/close
due to conflicts.
see #1245   as well


fix(config): only load dotenv in config module

:tada: This PR is included in version 1.34.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Syncing trigger failed to deploy python (cli)

Hi,
I'm trying to deploy my function app (func azure functionapp publish <app_function>) but it's not working.
I have :
Deployment completed successfully.
Syncing triggers...
Syncing triggers...
Response status code does not indicate success: 408 (Request Timeout).
Few days ago it was working but since yesterday nothing.
Does anyone could help me ?
Thanks

Today I got the same error. I suspect the fault is on azure side.

Can either of you confirm if this is still reproducing? If so - what language are you deploying and to what region? As @TomasKunka mentioned, I'm guessing it was a problem on the Azure side, in which case we couldn't do anything here

seems fine by now. but I experience this outages from time to time.

If you get a consistent repro - let us know and we can investigate. Otherwise I'll close this as external (aka a bug in Azure)


Add badges

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@ea8d966). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #15   +/-   ##
=========================================
  Coverage          ?   56.45%
=========================================
  Files             ?        1
  Lines             ?       62
  Branches          ?        0
=========================================
  Hits              ?       35
  Misses            ?       22
  Partials          ?        5

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 ea8d966...9e50cb9. Read the comment docs.


Blinds resetting upon RPi restart

It doesn't happen a lot, but whenever I need to restart my Raspberry Pi, the blinds get removed from my Home app and re-added, resetting the rooms that they're in and the automations they're assigned to. Any ideas what's happening to trigger that? Thanks.

This was in the logs:
[06/04/2022, 17:17:19] [homebridge-sunsa] Found Device: Dining Room Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Restoring existing accessory from cache: Dining Room Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Found Device: Kitchen Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Restoring existing accessory from cache: Kitchen Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Found Device: Living Room Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Restoring existing accessory from cache: Living Room Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Found Device: Office Front Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Restoring existing accessory from cache: Office Front Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Found Device: Office Side Blinds
[06/04/2022, 17:17:19] [homebridge-sunsa] Restoring existing accessory from cache: Office Side Blinds
I deleted the cached items and restarted and will see how they fare going forward

I've tried to replicate the problem and have been unsuccessful in doing so. Have restarted my pi multiple times and left it unplugged for a few minutes just to see. The cache is what should be preventing the devices from being unassigned from any room or automation as it restores them to their previous state upon start up.  Next time it happens if you can provide the log from the startup till after the sunsa devices are added that would be super helpful and maybe give us more of a clue as to what is going on.

I think it was an issue with the cached versions though. Once I deleted them and restarted the pi, I reconfigured them in the home app and did a few shutdowns and restarts of the raspberry pi. They remained configured each time so I’m hoping that’s fixed the issue for good.
Very much appreciate you looking into it. Hopefully this helps someone else looking in the future. Gonna close the issue.


Sassify doesn't seem to do anything

On the main page, you say Currently breaks in some cases on node 0.11.x with latest version (2.0.1) of node-sass as documented in node-sass issue #550. This is also the reason why node 0.11 is currently not supported. Use at your own risk (though no actual risk is involved, it might just not work).
I'm trying this with<EMAIL_ADDRESS>What am I supposed to do to get it to work. Any specific version?

Hey sorry about this, I haven't been paying enough attention to this project. We haven't used it for anything recent, and so our apps use older versions.
It looks like I accepted a PR that has the "standard" behavior disabled by default. I'm going to create a new version that reverses this.

Ok, should be working normally by default in<EMAIL_ADDRESS>Sorry about that!


Run SonarCloud only on pull requests to master

Run SonarCloud less often to reduce build times for normal CI builds.

Need changes


Convert workbox-background-sync to Typescript

R: @jeffposnick
This PR continues the migration to Typescript (started in #2058) and adds type definitions for workbox-background-sync.

Coverage remained the same at 80.794% when pulling bf2d0ffa2dcf87e85f121d7fca4ea089bb081c1a on ts-workbox-background-sync into b7002c9903e44982a17d21e5ac0e266107233acb on master.


Flutter 1.10 [web] asset path contradictions

It seems that "flutter web build" only includes assets that have been listed in pubspec.yaml.
However it seems that "flutter run -d chrome" only works with assets in the project_root/web/assets directory.
Listing "web/assets/" in pubspec.yaml will include the files in "flutter build web" (and still works with "flutter run -d chrome") however they are not included in the correct path.
To clean up this situation, more than just bugfixes are required.  We need direction on:

Recommend asset and font locations (Is it project/web/assets or project/assets?) (Is it project/web/assets/fonts or project/web/fonts or project/asset/fonts or project/fonts?)

How/if to specify those files in pubspec.yaml. (both icon.png and assets/icon.png can work for the same file, and changes the build produced by "flutter build web")

What is the recommended location of AssetsManifest.json and FontsManifest.json and how should the paths be specified in that file? Again there are multiple options possible.

How should asset paths be specified within flutter code, e.g. for Image.asset()? Again it's possible use 'assets/icon.png' or 'icon.png'.

I have tested all combinations of the available parameters and found nothing satisfactory.  It's difficult to point at what specifically "the problem" is, except to say that it's broken.

The intention is that flutter assets on the web behave identically on run/build and with other platforms. The fact that these are still reachable is a bug that should be fixed.

Wherever you want. Generally under a top level assets/ directory is common.

https://flutter.dev/docs/development/ui/assets-and-images

Don't create these, the tool should already be building the,

The same path as declared in the pubspec.yaml

Thanks!  That information is very helpful.
Now I can report that, using the above recommendations, assets aren't displaying in my web app.
My project has a top level assets and fonts directory (exactly the same as in my working mobile app).
My pubspec.yaml has:
flutter:
  uses-material-design: true
  assets:
    - assets/
  fonts:
    - family: MartelSans
      fonts:
        - asset: fonts/MartelSans-ExtraLight.ttf
          weight: 200

I have removed the AssetManifest.json and FontManifest.json (and I can verify they are being produced by "flutter build web" and contain the intended assets)
In Flutter code, I'm using Image.asset("assets/logo.png") (As works in mobile app. I also tried "logo.png" and "assets/asssets/logo.png" with no luck).
However when running via "flutter run -d chrome" or serving the build produced by "flutter build web", the asset images are not displayed, and an exception is thrown:
Error while trying to load an asset: Failed to load asset at "assets/logo.png" (404)
══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════
The following assertion was thrown resolving an image codec:
Unable to load asset: logo.png
Expected behavior: the logo.png image is displayed in the web app.
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, v1.10.4-pre.56, on Mac OS X 10.14.6 18G84, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
[✓] Chrome - develop for the web
[!] Android Studio (version 3.4)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] Connected device (3 available)
! Doctor found issues in 1 category.
USAJFOUTTSM:cruzweb jfoutts$ flutter doctor -v
[✓] Flutter (Channel master, v1.10.4-pre.56, on Mac OS X 10.14.6 18G84, locale en-US)
• Flutter version 1.10.4-pre.56 at /Users/jfoutts/flutter
• Framework revision c4c7e033bd (3 hours ago), 2019-09-18 09:44:41 -0400
• Engine revision fce8be3a68
• Dart version 2.6.0 (build 2.6.0-dev.0.0 cb80ea7ba9)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at /Users/jfoutts/Library/Android/sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-28, build-tools 28.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 10.3, Build version 10G8
• CocoaPods version 1.6.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[!] Android Studio (version 3.4)
• Android Studio at /Applications/Android Studio.app/Contents
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

Here is a temporary workaround script for my previous described setup.  Unfortunately the fonts are requested twice.  Possibly related to #36859
#!/bin/bash
rm -rf build build.tgz
flutter build web
mv build/web/assets/assets/*.png build/web/assets
mv build/web/assets/fonts build/web
mkdir build/web/assets/fonts
mv build/web/fonts/MaterialIcons* build/web/assets/fonts
tar cvfz build.tgz build

@jonahwilliams Would your recent fix that serves more things out of the web/ directory fix this as well?

That is unrelated. build_runner will serve arbitrary asset files that are available under lib, while flutter requires them to be specified in assets.

/cc @hterkelsen I'm going to close this because the asset issue is resolved, but if the font issue looks legitimate, let's open a dedicated issue for that.

@yjbanov have there been any changes in this area? I just created a Flutter project with web support. I've listed my assets/ directory under the assets: key in the pubspec file. No asset is copied to the /web directory, no assets are referenced in the manifest.json file, and the asset I'm trying to display is getting a 404.
I've tried killing and rebuilding the app with flutter web build followed by flutter run -d chrome. I'm still not seeing any change with relation to asset inclusion.
Is there anything else I should be trying for this? Also, do we have any CI tests that verify this particular behavior?

@matthew-carroll that sounds very serious. I opened a dedicated issue for this: https://github.com/flutter/flutter/issues/50624

Thanks @yjbanov


clarify service vs. extension

When going over the dev docs @mmattel noticed that I was referring to ocdav as a service, whereas most places use the term extension. Even the folder containing all ocis extensions / services is called extensions. But what are we extending? The ocis platform? Currently, the ocis extensions provide the core functionality of ocis. There is a difference between these core extensions and actual extensions like a calender or contacts extension.
@C0rby pointed out that all extensions we currently have are actually not really extensions, but services that make up the ocis platform.
While we could keep calling all ocis services extensions it would be clearer to call them ocis services. That would allow distinguishing them from ocis extensions which extend the ocis platform that in turn consists of at least the set of ocis services.
Would that mean we rename the extensions folder to services?
@micbar @dragotin @dragonchaser @C0rby @kobergj @owncloud/pm thoughts?

Any clearance we make now, will avoid confusion and creative/challenging "explanations" later on.

Renaming extensions => services makes sense to me, in the future we could add a new extensions directory where we pin third-party extensions we want to bundle using git sub-modules.

So far, AFAIK we only have services that are bundled by default and make the functionality of oCIS. Extensions are optional for me, and could be maintained elsewhere as @dragonchaser says.
So I support the rename as well.

I agree with the arguments in the OP and support the rename as well.


Add 'meta.refinery.original_sample_rate'

Which problem is this PR solving?
Refinery re-writing the sample rate was causing some concern. Writing down the sample rate sent to refinery prior to updating the sample rate should allow for more/better debug.
This is implementing the suggestion of @robbkidd in #490 to add annotations to the spans of their original sample rate. This will allow for better understanding of what is happening when there are multiple tiers of sampling happening in the telemetry processing.
Short description of the changes
At the places where the Span SampleRate was combined with the Trace SampleRate, the original span SampleRate is copied down into a meta.refinery annotation.

Gave me enough breadcrumbs to find...
https://opentelemetry.io/docs/reference/specification/trace/tracestate-probability-sampling/
https://docs.honeycomb.io/getting-data-in/opentelemetry/dotnet-distro/#sampling
So SampleRate is explicitly not an OTEL construct, but honeycombs
SampleRate which says probability of sample = 1/SampleRate where SampleRate
is 1 to max(uint)?
On Thu, Sep 8, 2022 at 11:34 AM Kent Quirk @.***> wrote:

@.**** commented on this pull request.
In collect/collect.go
https://github.com/honeycombio/refinery/pull/508#discussion_r966180598:

  i.Transmission.EnqueueSpan(sp)

  return

}
i.Logger.Debug().WithField("trace_id", sp.TraceID).Logf("Dropping span because of previous decision to drop trace")
}
+func mergeTraceAndSpanSampleRates(sp *types.Span, traceSampleRate uint) {

if traceSampleRate != 1 {

Honeycomb's use and interpretation of SampleRate predates OTel. OTel uses
a p-value, which is effectively the mathematical inverse of Honeycomb's
SampleRate.
Honeycomb's backend data system interprets a missing value for SampleRate
as a value of 0, so therefore converts those to 1 automatically so the math
works correclty. We have been trying to push that idea upstream where we
can; it benefits everyone to have it more explicit.
—
Reply to this email directly, view it on GitHub
https://github.com/honeycombio/refinery/pull/508#discussion_r966180598,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABL2DNYJVTSAHL7FHDZQONTV5IIQZANCNFSM6AAAAAAQHKIOFQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add protocol to STAGING_PROJECT for testing attributes

Adds protocol to STAGING_PROJECT for testing attributes
Test attribute key: attribute, value: attribute_value

For this, we will need to set attribute: attribute_value in MP? Can we use something more realistic, like arm: test_kcl?

For this, we will need to set attribute: attribute_value in MP? Can we use something more realistic, like arm: test_kcl?

Sure, I've made the changes.


Why responsive table not working?

But it doesn't seems te be working for me?
I was expecting it to work like https://codepen.io/maicol-dg/pen/zPRjxJ
but it's the same as in 1.3
Am I doing something wrong here?

my mistake. sry


Add metrics for request timeout to server since it can change dynamically

Codecov Report
Patch coverage has no change and project coverage change: -0.01 :warning:

Comparison is base (40810da) 14.53% compared to head (dda9502) 14.52%.

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #2398      +/-   ##
============================================
- Coverage     14.53%   14.52%   -0.01%
- Complexity     2345     2349       +4
============================================
  Files           771      772       +1
  Lines         59816    60130     +314
  Branches       7333     7377      +44
============================================
+ Hits           8694     8735      +41
- Misses        50612    50889     +277
+ Partials        510      506       -4

Impacted Files
Coverage Δ

.../java/com/github/ambry/router/DeleteOperation.java
0.00% <0.00%> (ø)

.../com/github/ambry/router/GetBlobInfoOperation.java
0.00% <0.00%> (ø)

...java/com/github/ambry/router/GetBlobOperation.java
0.00% <0.00%> (ø)

.../github/ambry/router/NonBlockingRouterMetrics.java
0.00% <0.00%> (ø)

...ain/java/com/github/ambry/router/PutOperation.java
0.00% <0.00%> (ø)

...om/github/ambry/router/ReplicateBlobOperation.java
0.00% <0.00%> (ø)

...va/com/github/ambry/router/TtlUpdateOperation.java
0.00% <0.00%> (ø)

...ava/com/github/ambry/router/UndeleteOperation.java
0.00% <0.00%> (ø)

.../com/github/ambry/clustermap/HelixParticipant.java
36.25% <0.00%> (-1.21%)
:arrow_down:

.../src/main/java/com/github/ambry/store/Journal.java
84.94% <0.00%> (-1.08%)
:arrow_down:

... and 44 more

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


hostname: bug fix for non-windows xgethostname

Cstr::from_bytes_with_nul needs input bytes null terminated. Current
version does not include the last null byte, hence
Cstr::from_bytes_with_nul will panic with error 'FromBytesWithNulError {
kind: NotNulTerminated }'

Updated.

Thanks :)


Implement auto updater for Windows and Mac

Before submitting, please confirm you've

[x] read and understood our Contributing Guidelines
[x] completed Mattermost Contributor Agreement
[ ] executed npm run lint:js for proper code formatting

Please provide the following information:
Summary
Implement auto updater.
This is a first prototyping of auto-updater. At this time, this PR only considers the Windows installer.
NSIS installer is introduced. It integrates 32-bit and 64-bit installers into one installer file. And the new installation folder becomes %USERPROFILE%\AppData\Local\Programs\mattermost (Per user install). We can also choose C:\Program Files (Per machine install) by modifying electron-builder settings.

Issue link
#15
Test Cases
I prepared a version, v9.9.9 for testing: https://circleci.com/gh/yuya-oc/desktop/366#artifacts
A. simple case with CircleCI

Install the app.
Edit %USERPROFILE%\AppData\Local\Programs\mattermost\resources\app-update.yml

Set 'https://366-67276967-gh.circle-artifacts.com/0/tmp/circle-artifacts.0utXb6g/' to the value of url

The app will check updates to CircleCI URL.

B. manual testing for various cases.

Prepare a http server to locate latest.yml and mattermost-setup-9.9.9.exe.
Example:  http-server

Install Node.js.
Execute npm install -g http-server
Execute http-server -p 8081 under the folder where artifacts are located.

The app will check updates to http://localhost:8081/latest.yml.
You can change the test version and release date by editing latest.yml.

Additional Notes
https://circleci.com/gh/yuya-oc/desktop/365#artifacts

Wow wow wow!!!
Thanks! Will begin the review soon (we're cutting the release candidate for the next server release tomorrow so it might be a couple of days)

We can also choose C:\Program Files (Per machine install) by modifying electron-builder settings.

Does this mean we as in "us" or can the admin modify this in anyway (I assume it's "us" but thought to ask).
As for testing, wondering if there's anything I can test (except review the UI you posted above) until we have a local http server of some kind

Yeah, it means "us". We can choose one of them:

Per user (under AppData) (current)
Per machine (under C:\Program Files)
Choose one of them in install wizard

Whichever we choose one of them, we can add the option to select install location by adding install wizard.
This should be discussed at #491, but I wanted to tell a little here.

Updated the artifacts link and test cases. You would be able to see the dialog after 48 hours by following the steps A.

@yuya-oc Let's not merge #582  until PRs contributed by @csduarte are merged to avoid conflicts for those PRs
https://github.com/mattermost/desktop/pulls/csduarte

@jasonblais Okay, I will continue to work on this branch.

Thanks @yuya-oc! I'll also get feedback from others about our approach

Rebased and added a feature for Windows zip. When using zip packages, "Install Update" button becomes "Download Update" button and it opens https://about.mattermost.com/download/#mattermostApps in user's default browser.

Rebased: https://circleci.com/gh/yuya-oc/desktop/500#artifacts
@jasonblais To test Mac, we need code-signing for newer app (v9.9.9: https://circleci.com/gh/yuya-oc/desktop/501#artifacts) Would you help this? (automation is not needed for now)

@yuya-oc Awesome! Thanks. I've set time for myself to test this PR thoroughly, and planning to ask other team members to help as well.
I'll ask Joram or Jonathan to help code-signing for the Mac

@yuya-oc I installed the Windows .exe file and edited the URL for app-update.yml as https://366-67276967-gh.circle-artifacts.com/0/tmp/circle-artifacts.0utXb6g/.
I'll wait for 48 hours to see if the update prompt comes up Tuesday evening.
Few initial questions/thoughts:

Do we have a flag somewhere to turn off auto-updates by the admin (e.g. a customer deploying a custom fork of the app, or a package manager like Chocoleatey distributing their own package)?

if not, would this be added to BuildConfig.json, perhaps?

Can you help update NOTICE.txt with new dependancies?
Can you help edit the upgrade prompt interval from 48 hours to 5 minutes for testing purposes? It'll make it faster to test all the different packages, as I'm planning to set aside time for Monday/Tuesday to go through all 4 variations for Windows, and one for Mac, and hopefully get other people to test it out too.
Can you help add a "Check for Updates..." option in the "Help" menu bar, as described in slides 13 and 14 of the spec
How much work will be involved for adding the auto-update prompt for Linux, similar to what's implemented for Windows .zip files? (Just so I know)

Also, just want to reiterate a big thanks for your help on this PR. It'll be a great feature to add for v4.0.
My aim is to get all testing and feedback summarized here in the next few days, and prepare to merge this PR within the next two weeks for v4.0 🎉

@jasonblais Sorry, probably I had mistake when rebasing. Please stop test for a moment.

Updated: https://circleci.com/gh/yuya-oc/desktop/502#artifacts

Now I'm considering several options.

Package maintainers: By adding an extra file (app-updater-config.json) into packages, they can override auto-updater parameters.
Admins: They can override parameters via pre-configuration.

Okay, I'll do later.
https://circleci.com/gh/yuya-oc/desktop/503#artifacts
It was missing due to my mistake. It should appear at current artifacts.
Prototype is ready. However it's written from zero. So for now, I would like to focus on Windows and Mac.

1 - Would having the options in buildConfig.json be an option? Since it's used to configure the app before building it?
5 - Sounds good 👍

And thanks for the changes! I'll spend time today and tomorrow to test this out. Big thanks!

1 - Would having the options in buildConfig.json be an option? Since it's used to configure the app before building it?

Auto updater parameters such as URL are defined in electron-builder.json. Package maintainers can edit it by themselves. What about admins? They would need to build the app from source.

Thans @yuya-oc. I think the main use case for admins would be when they're running their own versions of the Mattermost app (e.g. have forked us), and hence want to disable it, or somehow send the notification out themselves for their own releases.
Or is there a use case for admins I'm not thinking about? Would one case be when the app is distributed silently to their end users?
Definitely important to think this through so we don't fire update notifications that conflict with the admin set up.

@yuya-oc the ability to turn this on/off at choice will be important. Eventually, we will probably want to use it, but we would have to test. Our fleet is 40,000+ machines with all forms of OS's. Something like this will need to best tested and also security is a concern.

@jasonblais The use case I thought is that they use our prebuilt packages. However it would be confusing point like #483.
@csduarte Yeah, that's understandable. At least it should be one of buildConfig parameters.

@yuya-oc Having it in buildConfig.json for package managers (and anyone else packaging the apps themselves. and distributing to end users), and in the pre-config file for admins seems okay to me.
1 - For package maintainers: We can add it to either buildConfig.json or have an app-updater-config.json file.
buildConfig.json feels simpler and more obvious to me, since that's where we have the other build settings, but I don't have a strong opinion on this. We could check with Hans or William who are maintaining the Chocolatey packages and see if they have an opinion (hans0 and wget on pre-release.mattermost.com, respectively).
2 - For admins, you bring a good point about using prebuild packages, and distributing them to users. For that, including it in the pre-config file makes sense.

Fixed an unexpected exception and added enableAutoUpdater to buildConfig. https://circleci.com/gh/yuya-oc/desktop/515
5 min: https://circleci.com/gh/yuya-oc/desktop/517#artifacts
v9.9.9: https://circleci.com/gh/yuya-oc/desktop/516#artifacts
@jasonblais
1 - Surely buildConfig is obvious. However to edit it makes build steps difficult because we need to build the app in various config at once. So I added app-updater-config.json to control the updater.
2 - Yeah, I will add after pre-config is ready.

@yuya-oc Great, I will test this.
1 & 2 - sounds good to me. We should document all this carefully via https://github.com/mattermost/desktop/issues/648

Have also asked Joram to help with code-signing of the Mac apps. If it fails again, we'll try to get you access to the credentials to troubleshoot the issue.

Just an update: Joram completed code-signing last week and have been testing. Will share feedback once finished.

Left a note for you on pre-release,

I fixed some problem.
a. "Remind me later" not working.
b. The app installs the update when quitting the app even when using "Remind me later".
So I stopped auto-download of updater, and added a progress bar for downloading.

5 min: https://circleci.com/gh/yuya-oc/desktop/530#artifacts
v9.9.9: https://circleci.com/gh/yuya-oc/desktop/531#artifacts

@jasonblais For now, no. To submit to stores, we need to build specialized packages. We should consider that first.

@yuya-oc Now that the build process and code signing are automated, can you help generate new test builds based on the new job?
That way we can test this feature with the new build process.

@yuya-oc just following up, when you have a chance can we generate new test builds for this?

If you need Linux testing let me know.

@yuya-oc a couple notes from testing:

What is expected for the action button from this dialog? On Windows it says "Download Update" and takes me to the mattermost apps download page: https://mattermost.com/download/#mattermostapps. But on Mac it says "Install Update" and then I get a progress bar for the download I'm assuming.

For the download progress it looks like the white XX% text needs to be moved to the right slightly to add some buffer space:

Can we add a "Cancel" button on the update dialog once the download starts? I had to quit and restart the app since it was stuck at 0% and I couldn't get out of the dialog.

@esethna Thanks for feedback.

Which version of Widows app did you use, zip or installer? When using zip version, auto-updater can't work. So it says "Download Update" and opens the link for the download page.

By adding min-width parameter, we can get readable letters. Is it acceptable?

Probably we should do that. I'll take a look.

Ah okay that's why, I was using the ZIP. So when the desktop app is installed via the Mattermost download page by users it is expected that the auto-updater will show the progress bar and install the update from this modal, as I experienced on my mac?
Yes looks good thanks.
Cool, thanks!

Hi @esethna. I updated the PR. Now it's ready to test 0% of progress bar and the cancel button.
Please get artifacts from jenkins: https://build.mattermost.com/job/md/job/desktop-pulls/view/change-requests/job/PR-582/53/

Ah okay that's why, I was using the ZIP. So when the desktop app is installed via the Mattermost download page by users it is expected that the auto-updater will show the progress bar and install the update from this modal, as I experienced on my mac?

That's right.

@yuya-oc retested the build artifacts you linked. Looks like I'm getting this modal stating my app is up to date after waiting 5 minutes or when checking for updates:

Also, given we are close to being ready to merge this, do we have to make any changes to get this ready for production? And is there a way for our QA team test this on an RC after merge?

@esethna Well, it's weird. I got the modal to notify new release. Would you make sure the app version when you start the app?

As per new review policy, adding @hmhealey to help do a pass

Thanks @yuya-oc! @hmhealey please help review the changes?

@crspeller feedback above ^

@yuya-oc Looking for answer to my question so we can get stuff resolved and merged.

Thanks @wget. Please let me confirm.
Windows
Should v4.2 app always use "Download Update" button for the dialog? The button opens a web page, https://mattermost.com/download/

macOS
Agree. In addition, recent brew cask package manager has a parameter to know whether the app has auto-updater. So there would be no conflicts.
Linux
Agree. However, currently there is no implementation for Linux because I had thought we need to finalize Windows/macOS solution first. Can we continue to discuss on another issue?

@yuya-oc I don't see our public key anywhere in this PR, how does the signature verification work?

@yuya-oc

Windows
Should v4.2 app always use "Download Update" button for the dialog? The button opens a web page, https://mattermost.com/download/

If this is just a link to a web page. No issue.

macOS
Agree. In addition, recent brew cask package manager has a parameter to know whether the app has auto-updater. So they would not conflict.

Ok. Understood.

Linux
Agree. However, currently there is no implementation for Linux because I had thought we need to finalize Windows/macOS solution first. Can we continue to discuss on another issue?

Ok. Understood. GNU/Linux is indeed low priority now because its the only OS having excellent package managers. End users won't suffer from a missing auto updater (especially on Arch Linux, since the packages are well maintained <3).

@yuya-oc I don't see our public key anywhere in this PR, how does the signature verification work?

Indeed this needs to get sorted out. This is a feature I need for msi installer as well. Please provide info how you are singing the applications. So that I can follow the same path for my msi.
This is what happens with non signed msi installers that have been downloaded from the web:

Yeah, “Download Update” button behaves like a link. The download page is opened in their default web browser.
@wget @crspeller In my understanding, signature verification is done by Windows itself. So what we need to do in ourselves is verify checksum. Codesining is done by our jenkins, https://build.mattermost.com. So the script to sign exe is included in the private repository (shared pipeline), not in this repository. The script gets private files from Mattermost’s Amazon S3 which stores certificates.
The script manually signs the code with osslsigncode. However electron-builder has a mechanism to do code-signing while building the app. We move to AppVeyor, so I believe we can use it.
https://www.electron.build/code-signing#windows

@yuya-oc Thanks. Super. I will add these pieces of info together and will try to figure out to add the code signing in the AppVeyor pipeline.

Updated with "Download Update" (notifyOnly) configuration for Windows.

@yuya-oc can you please address the build issue when you can ^ Then I think we are good to merge this?
This should be the last PR before we cut the RC for 4.2?

@esethna Now the error is resolved, so I think this is ready to merge.
I'll make another PR. That's the final PR for v4.2: https://github.com/mattermost/desktop/pull/841#issuecomment-428180817

Merged the master branch. For now I merge this branch to suppress more conflicts. We can disable the feature when we need.


Localization korean

What kind of change does this PR introduce?
Adds Korean translation json file for localization.
What is the current behavior?
Does not provide Korean translation.
What is the new behavior?
Korean translation file is added to the Repo. (Under Localization folder)
Additional context

Hi Folks,
Could we merge this, if there is no issue?
@laktek @silentworks @saltcod @michelp


Fix PyPI link/reference in readme

Thanks a lot. Could you describe why the current pypi reference is not adequate and should be improved?

On GitHub the current reference ends up as a clickable link (even if that wasn't your intention; I suspect it's a result of it being an image), however the link doesn't go anywhere especially useful. I had expected that when I clicked it I would end up at PyPI -- that's normally where the PyPI badge links to and helps confirm the link between that published package and this project.