Refactor

Description
Application refactor
Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new errors

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against ebfcbb8407a62f639e1d45f7f84bac85f51754db

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against 2a1212d3b9c1954ed56a3c4b3862d91849848fd0

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against 87220c8be45d69ef0f4439204d1dd380646ef586

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against 4fa11261eda242ca08c705517d431bbbfd226327

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against 58402f95f94f874ec7f575cbbb93f0ca071f3c57

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against a621734da3d1c1c4166c626ce5057826cf90e1fc

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Warnings

:warning:
:exclamation: Big PR

: Pull Request size seems relatively large. If Pull Request contains multiple changes, split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: dangerJS against 3e2c19552521d85932f84aec844efe4977587712


add autogenerated js

I'm adding socket.io to the project. How should I include its js file? That file is generated on the server side automatically and is accessible at /socket.io/socket.io.js url. I have added it to index.html here:
  <script src="/socket.io/socket.io.js"></script>
  <!-- inject:js -->
  <!-- endinject -->

in my component I use it that way:
/// <reference path="../../../tools/typings/tsd/socket.io-client/socket.io-client.d.ts" />
import {Component} from 'angular2/angular2';
declare var io: SocketIOClientStatic;

@Component({
  selector: 'home',
  templateUrl: './components/home/home.html',
  styleUrls: ['./components/home/home.css']
})
export class Home {
  constructor() {
    // listen to notifications about images uploading
    io().on('imageUploaded', function(data) {
      console.log('data: ' + data);
    });
  }
}

Is it right way to add remote js files?

Yes, seems good to me, or you can include it to this array.

In case you wonder where to include your file, see #201 for a longer explanation


only construct one axis_index_p primitive

Before this change, there were two versions of axis_index_p, one used with omnistaging and one without. But that made bookkeeping hard and buggy. This change defines the axis_index_p primitive in core.py. Some of its rules are still changed when omnistaging is enabled.
cc @trevorcai @skye

Thanks, this resolves the issue for me!


Uncaught TypeError: undefined is not a function

I'm getting the following error when loading my page with bootstrap.offcanvas.js installed:
Uncaught TypeError: undefined is not a functionbootstrap.offcanvas.js?ver=4.0:229 (anonymous function)bootstrap.offcanvas.js?ver=4.0:253 (anonymous function)
Loading bootstrap.offcanvas.min.js produces the same result.

@DaveLindberg What line is the error on? Do you get the error on http://iamphill.github.io/Bootstrap-Offcanvas/example.html?

looks like the error is on line 229. JSHint throws warnings on:
line 233
return oc = "Did you mean to return a conditional instead of an assignment? — column 18"
line 237
return $(this).on('click', function(e) { "'e' is defined but never used. — column 43"
I installed the components using bower.

@DaveLindberg Hmm.. 229 would be https://github.com/iamphill/Bootstrap-Offcanvas/blob/master/dist/js/bootstrap.offcanvas.js#L229 which would surely mean that $ isn't available. jQuery is available right?

Confirmed, jQuery is loading properly — before the bootstrap.offcanvas.js

@DaveLindberg Could you upload a demo somewhere where it isn't working?

See http://webdev.davelindberg.com/

@DaveLindberg Ah I see the issue, angularJS redefines the $. Will get a fix out ASAP.

Fantastic, thanks!

@DaveLindberg Just released 1.3.5 if you could try that.

I've posted the v1.3.5 version to http://webdev.davelindberg.com/
Still getting an error. Line 149?

@DaveLindberg Just checked your demo, and it is still showing the older version?
Just created a PR anyway with a test. Could you try using #10 ?

#10 is working fine on my local install. Oddly, it still throws an error on webdev. I've check the two files and found no diff, not sure what's happening here?

@DaveLindberg Your one http://webdev.davelindberg.com/wp-content/themes/angwobo/bower_components/bootstrap-offcanvas/dist/js/bootstrap.offcanvas.js?ver=4.1.1 looks different to https://raw.githubusercontent.com/iamphill/Bootstrap-Offcanvas/dollar-fix/dist/js/bootstrap.offcanvas.js

Thx. Not sure why, but there's a trailing newline on the webdev version that I can't get rid of. Other than that, the latest version should be in place.

@DaveLindberg Cool, will get it merged in.
Styling on your version is off. Looks like you haven't included Bootstrap.


Updated decode-nested-bodyparts-in-multipart.bal

Purpose

Review the comments.

Goals

Review the comments.

Approach

Reviewed the comments and did a few minor changes.

User stories

Summary of user stories addressed by this change>

Release note

Brief description of the new feature or bug fix as it will appear in the release notes

Documentation

Link(s) to product documentation that addresses the changes of this PR. If no doc impact, enter “N/A” plus brief explanation of why there’s no doc impact

Training

Link to the PR for changes to the training content in https://github.com/wso2/WSO2-Training, if applicable

Certification

Type “Sent” when you have provided new/updated certification questions, plus four answers for each question (correct answer highlighted in bold), based on this change. Certification questions/answers should be sent to<EMAIL_ADDRESS>and NOT pasted in this PR. If there is no impact on certification exams, type “N/A” and explain why.

Marketing

Link to drafts of marketing content that will describe and promote this feature, including product page changes, technical articles, blog posts, videos, etc., if applicable

Automation tests

Unit tests

Code coverage information

Integration tests

Details about the test cases and coverage

Security checks

Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? yes/no
Ran FindSecurityBugs plugin and verified report? yes/no
Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes/no

Samples

Provide high-level details about the samples related to this feature

Related PRs

List any other related PRs

Migrations (if applicable)

Describe migration steps and platforms on which migration has been tested

Test environment

List all JDK versions, operating systems, databases, and browser/versions on which this feature/fix was tested

Learning

Describe the research phase and any blog posts, patterns, libraries, or add-ons you used to solve the problem.

Ballerina-by-example is moved to https://github.com/ballerina-platform/ballerina-examples/. Please send the PR there.


Plugin not working with latest update of Sketch (49)

I have the latest version of sketch measure (2.7.2) on my Mac but when sketch came out with the latest update this week to version 49, sketch measure stopped working. The specific problem I'm having is that the plugin is exporting a spec page that is just a solid image instead of marked up.

I have the same problem since I yesterday updated to version 49. Please fix this asap :)

It's been fixed, thanks! Installing the newest version works properly.


Inconsistent result in a flutter package

This tracker is for issues related to:
dart2js
I am using a flutter package which blake2b
Created a test app with flutter,
code:
Uint8List publicKey = Uint8List.fromList([92,37,74,216, 114,178,220,105,117,200, 131, 83,238,62,
 121,82, 12,176, 88, 217, 100, 37, 189, 98,155, 103,217, 37,45,213, 143,  135
    ]);
    print("input : $publicKey");
    Uint8List blake2bHash = Blake2bHash.hashWithDigestSize(160, publicKey);
    print("output : $blake2bHash");

output in macos(flutter run -d macos)
flutter: input : [92, 37, 74, 216, 114, 178, 220, 105, 117, 200, 131, 83,
238, 62, 121, 82, 12, 176, 88, 217, 100, 37, 189, 98, 155, 103, 217, 37, 45,
 213, 143, 135]
flutter: output : [224, 176, 194, 96, 253, 91, 115, 58, 42, 76, 86, 102, 181, 192, 205, 216, 25, 189, 215, 151]

output in chrome(flutter run -d chrome)
input : [92, 37, 74, 216, 114, 178, 220, 105, 117, 200, 131, 83, 238,
62, 121, 82, 12, 176, 88, 217, 100, 37, 189, 98, 155, 103, 217, 37, 45,
213, 143, 135]
output : [185, 198, 8, 29, 12, 136, 243, 75, 182, 78, 71, 211, 231, 85,
36, 182, 84, 74, 206, 206]

version
Dart SDK version: 2.14.0 (stable) (Mon Sep 6 13:47:59 2021 +0200) on "macos_x64"

code:

Uint8List message = Uint8List.fromList([
      92,
      37,
      74,
      216,
      114,
      178,
      220,
      105,
      117,
      200,
      131,
      83,
      238,
      62,
      121,
      82,
      12,
      176,
      88,
      217,
      100,
      37,
      189,
      98,
      155,
      103,
      217,
      37,
      45,
      213,
      143,
      135,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0
    ]);
    List<Int64> m = List<Int64>.filled(16, Int64.fromInts(0, 0));
    for (int j = 0; j < 16; j++) {
      m[j] = bytes2long(message, j * 8);
    }
    print(m);

byte2long
bytes2long(final Uint8List byteArray, final int offset) {
    // & 0xFF is useless
    return ((Int64.fromInts(0, byteArray[offset] & 0xFF)) |
        ((byteArray[offset + 1] & 0xFF) << 8) |
        ((byteArray[offset + 2] & 0xFF) << 16) |
        ((byteArray[offset + 3] & 0xFF) << 24) |
        ((byteArray[offset + 4] & 0xFF) << 32) |
        ((byteArray[offset + 5] & 0xFF) << 40) |
        ((byteArray[offset + 6] & 0xFF) << 48) |
        ((byteArray[offset + 7] & 0xFF) << 56));
  }

Output in flutter run -d macos
flutter: [7628168075183531356,<PHONE_NUMBER>616364149,<PHONE_NUMBER>388677132, -8678483567034407013, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

Output in flutter run -d chrome
[3628737884,<PHONE_NUMBER>,<PHONE_NUMBER>, 635004827, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0]

Most likely you hit the difference in number semantics between Web and Native, e.g. int not being able to represent full 64-bit integer range.
It seems the package is trying to use fixnum to mitigate the problem, but does not do it 100% correctly. On a quick glance I have found at least 1 problematic place, there might be more: e.g. https://github.com/riclava/blake2b/blob/master/lib/byte_utils.dart#L17 is incorrect. << 56 is not going to do anything useful on the web. You need to rewrite this code to build two 32-bit halfs independently, e.g.
Int64.fromInts(
    (byteArray[offset + 4] & 0xFF) |
        ((byteArray[offset + 5] & 0xFF) << 8) |
        ((byteArray[offset + 6] & 0xFF) << 16) |
        ((byteArray[offset + 7] & 0xFF) << 24),
    (byteArray[offset] & 0xFF) |
        ((byteArray[offset + 1] & 0xFF) << 8) |
        ((byteArray[offset + 2] & 0xFF) << 16) |
        ((byteArray[offset + 3] & 0xFF) << 24));

There might be other similar bugs (e.g. you should look around for places where you perform arithmetic on Int64 and int and make sure that int part does not overflow on the web).

Okay, Thanks


Documentation tests

Adds tests for the code blocks in the README and our user guides. Also, fixes one bug that got unveiled.

@Scienfitz @AVHopp, two accepts and I will merge 🚀


[feature request] rc file for global defaults

It looks like tab is the default output delimiter compared to the input delimiter being used as the output in cut. I'd like to change this globally for me, a .hckrc would be a great addition (similar to .ripgreprc and others).
Thanks for the awesome work on this!

I like this idea!
I haven't been able to put much time into hck recently. Marking this as a future improvement. And always open to PRs :)
There is always the alias trick alias hckc="hck --output-delimiter ," that you could stick in your .*rc file, or even completely shadow the hck name.

alias is a great trick here. Totally get not having much time, may be able to carve out some time for a PR :)


Chaining commands \ Login script

I feel stupid, but I can't find an example for this.  I've got the menus built and logins working as I want.  However, how do add commands to run after successful login?  There are certain clients that I want to run a command, or string of commands, every time I log in.

Both? The initial impetus was wanting to run the command immediately after login, essentially as part of the login process.  A second thought was a script that could be created, say an update script, that could be run across multiple machines.

@gah242s You could do this a few ways.
expect
#!/usr/bin/expect -f

spawn ssh<EMAIL_ADDRESS>expect {
"myUser" {send "ps aux | grep ssh && exit\r";exp_continue}
}

call the above with expect expect /tmp/myscript.txt this would ssh you to the system and and run ps aux | grep ssh show you the output and then log you out.
ForceCommand
sshd has something called force command. In the sshd_config on the server you tell ForceCommand the script you want to run...
     ForceCommand
	     Forces the	execution of the command specified by ForceCommand,
	     ignoring any command supplied by the client and ~/.ssh/rc if
	     present.  The command is invoked by using the user's login	shell
	     with the -c option.  This applies to shell, command, or subsystem
	     execution.	 It is most useful inside a Match block.  The command
	     originally	supplied by the	client is available in the
	     SSH_ORIGINAL_COMMAND environment variable.	 Specifying a command
	     of	``internal-sftp'' will force the use of	an in-process sftp
	     server that requires no support files when	used with
	     ChrootDirectory.  The default is ``none''.

bashrc
see here http://stackoverflow.com/questions/820517/bashrc-at-ssh-login
shuttle and the inTerminal: current setting
"inTerminal": "current" is a command level setting that will tell shuttle to run your command in the existing window. So you would use a shuttle command to ssh to the server and then use shuttle again to run your command in the currently open terminal window. While not automated like expect and ForceCommand it's very resuable with no configurations needed server side. For more on this see https://github.com/fitztrev/shuttle#interminal-value

I think that this is resolved.... if not please reopen 😄


Add total scan time stats for ReadFileInputStream

Summary:
Add totalScanTime_ stats for ReadFileInputStream when read from external system, reflect different ReadFile performance, similar to rawBytesRead_.
Partially fixed #4018

@Yohahaha Your change here looks good.  Can you fix the unit tests?

@Yuhta Tests has been fixed, I updated the docs btw.


Question not an issue about pyboard.py

I'm trying to adapt your code to my needs.
If I understand well, here's what you do for executing a command:
1 - enter raw repl
a - write '\r\x03\x03' # ctrl-C twice: interrupt any running program
b - read everything
c - write '\r\x01' # ctrl-A: enter raw REPL
d - read_until 'raw REPL; CTRL-B to exit\r\n>'
e - write '\x04' # ctrl-D: soft reset
f - read_until 'soft reboot\r\n'
g - read_until 'raw REPL; CTRL-B to exit\r\n'
2 - execute command
a - read_until '>'
b - write command
c - write '\x04'
d - read 2 bytes and check if its "OK"
3 - exit raw repl
a - write '\r\x02' # ctrl-B: enter friendly REPL
This doesn't work well for me.
Here's what works fine:
1 - enter raw repl
a - write '\r\x01' # ctrl-A: enter raw REPL
b - read_until 'raw REPL; CTRL-B to exit\r\n>'
2 - execute command
a - write command
b - write '\x04'
c - read until "OK"
d - write '\r\n' -> I don't think it is necessarily this string
e - read command result until '>'
I don't need to exit raw repl
I can repeat this sequence as many times as I have commands.
Am I missing something ?

The Control-C's are to interrupt a running program. If you know your board is at the REPL, then they aren't needed.
Doing the Control-D (soft-reset) basically reinitializes the heap and puts the board in a known state. If you interrupts a running program then you might not have much free memory left and not be able to do anything.
Entering and staying in the RAW REPL would be a pretty decent optimization.
IIRC pyboard.py collects the output until the end, but splitting the functionality into more granular pieces makes sense.

Just to note: I didn't write pyboard,py, it originally came from the micropython/tools directory. pyboard,py is used to run the test suite.


Consider convenience functions to create instanced models

There currently is a glbToI3dm command that takes a GLB file and generates an I3DM from that. This I3DM contains a single instance. This is of somewhat limited use, considering that I3DM is now considered a 'legacy' format, and there is no longer any benefit of wrapping a GLB into such an I3DM.
We could consider to create utility functions for creating real instanced models.
(The output should preferably be GLBs with EXT_mesh_gpu_instancing extension, but we could also look at creating I3DM (maybe with URI as payload), if it's considered to be worth the effort)
In terms of implementing the functionality itself, this could be a pretty low-hanging fruit. The ExtInstanceFeaturesDemo.ts already shows that creating such a GLB from a bunch of translations is trivial.
The main degree of freedom is: Where does the instancing information come from?
A pragmatic (and generic) first shot could be to just use some JSON file with information like
{
    translations: [
        [1,2,3],
        [2,3,4],
    },
    rotations: [
        [0,0,0,1],
        [0,1,0,0],
    },
    scales: [
        [1,1,1],
        [2,2,2],
    }
}

Apparently, there are sources for data that could be relevant for creating such instanced models. For example, @bertt mentioned in the forum that opentrees.org could be a source for creating instanced tree models. Other sources of instancing information could be databases with the locations of  wind power plants, for example. Maybe there could even be a thin convenience layer that takes longitude/latitude/height information and converts that into the low-level translation/rotation/scale information.

Hello！
I have a shapefile points file that stores the coordinates (longitude, latitude, and altitude) and azimuth and elevation angles of points.Now I have created a windmill model in gltf format.How can I generate a series of windmill models, with the position and orientation of each model adapting to the information (i.e., coordinates, azimuth, and elevation) of each point in the shapefile's point file.
老师，您好！
我有一个shapefile 的点文件，该文件存储了点的坐标（经度、维度、高度）和点的方位角与俯仰角。现在自己创建了一个风车模型gltf格式。请问该怎么生成一些列风车模型，每一个风车模型的位置和方向能够根据shapefile 的点文件中每个点的信息（即坐标、方位角、俯仰角）适配。

Hello !
I have already created a windmill gltf model and want to generate 1000 instances of this windmill (Instanced 3D Model, i3dm). I already have 1000 coordinates (longitude, latitude, altitude) and directions (azimuth, elevation). How should I use these positions and directions to generate corresponding 1000 windmill instance 3D models?
老师，您好！
我现在已经创建了一个风车gltf模型,想生成这个风车模型的1000个实例（Instanced 3D Model，i3dm）。已经有了1000个坐标（经度、维度、高度）和方向（方位角、俯仰角），请问应该怎么利用这些位置和方向生成对应的1000个风车实例三维模型？

@qwork2010 The required functionality has not (yet) been implemented as part of the 3D Tiles Tools. But you could give the tool that bertt linked to a try

@qwork2010 one option https://github.com/Geodan/i3dm.export

@bertt
Hello!
Thank you very much for your answer!The rotation in the code "rotation - double with horizontal rotation angle (0 - 360 degrees);" only allows for horizontal rotation. Can I perform a vertical rotation (with a vertical pitch angle value)?Because our requirement is to rotate both horizontally and vertically, how can we achieve this goal?
The details are that I have a gltf windmill model and a shapefile file (point file, which stores the coordinates (longitude, latitude, and altitude) and direction (horizontal azimuth and vertical pitch) of 1000 points), and I want to generate 1000 instances of the windmill based on this (1000 i3dm instances with different positions, horizontal orientations, and vertical elevations).Is there any implementation method?Or I have already got 1000 instances of i3dm, how can I modify the pitch angle in the vertical direction?
老师，您好！
非常感谢您的回答！“. rotation - double with horizontal rotation angle (0 - 360 degrees);”这里面的旋转只有水平旋转，请问如果需要进行竖直方向的旋转（有竖向俯仰角值）可以吗？因为我们的需求是“水平方向和竖直方向”都要旋转，请问怎么实现这个目标？
详细情况是，我有一个gltf风车模型和一个shapefile文件（point文件，存储了1000个点的坐标（经度、维度、高度）和方向（水平方位角、竖向俯仰角）），想基于此生成风车模型的1000个实例i3dm（1000个i3dm具有不同位置、水平朝向、竖直仰角）。请问有实现方法吗？或者我已经有了1000个实例i3dm，再如何修改其竖直方向的俯仰角？

@qwork2010 use option --use_gpu_instancing, rotation angles must be in columns roll, pitch, yaw

@qwork2010 use option --use_gpu_instancing, rotation angles must be in columns roll, pitch, yaw
@bertt

Hello!
Thank you very much for your response!I have already obtained the Instanced 3D Model of the windmill (i3dm, see the figure below). Is there any way to modify the pitch angle in the vertical direction?

@bertt
Hello!
Thank you very much for your response!I have already obtained the Instanced 3D Model of the windmill (i3dm). Is there any way to modify the pitch angle in the vertical direction?

In I3dm.export you must have the model (glb not I3dm) and model positions and rotations (roll pitch, yaw) in the database table.

@bertt
Hello !
On the path“  https://github.com/Geodan/i3dm.export  ”I downloaded the program.

1] Use pre-built binaries from release

Run the program i3dm.xport.exe, the software crashes.
2] Use .  NET Tool
Prerequisite: .NET 8.0 SDK is installed  https://dotnet.microsoft.com/download/dotnet/8.0
use.  NET tool, the result information shows an error.

May I ask how to solve this problem?

postgres is not running or maybe it is blocked by windows firewall

you should ask questions regarding i3dm.export in its issue tracker instead: https://github.com/Geodan/i3dm.export/issues

Apparently, some of the comments here have been deleted. Well. That's confusing 😕

However: I did have another look at the options here. And depending on the intended usage pattern for such a functionality, the overlap to https://github.com/CesiumGS/3d-tiles-tools/issues/130 may be considerable (maybe even so large that it will eventually be a single function).
One difficulty is to decide where exactly which part of the "positioning" should be. And this basically boils down to the difference of someone who wants to define the positions/translations in some local coordinate system, and someone who wants to define them with cartographic positions.
The use-case that caused me to have another look at this was this forum thread, where the goal was to create tree instances based on cartographic positions. And assuming that the input is a glTF asset in its "canonical" representation (at the origin, y-up), then the translation and rotation for placing it at the given cartographic position could be represented in different ways:

In theory, the transforms could be stored in EXT_mesh_gpu_instancing itself, but this is a no-go, due to the usual "jittering" that would result from that
They could be stored in the glTF, as a transform of the root node. This would solve the problem and might even be OK for some use cases. But the resulting glTF would be pretty "unusual": It would be oriented awkwardly, and far away from the origin
The transform could be stored in the transform of a tile in a 3D Tiles tileset

I think that the last solution is the most flexible one, for the reasons that I tried to illustrate in this forum thread: It would then be possible to place that "forest-GLB" at any place of earth, just by using the proper tile.transform.
However, as an intermediate step, I just did some experiments for the second solution that stores the transform in the glTF. The following is a snapshot of this experiment:
CreateMeshGpuInstancing 2024-12-07.zip
It contains some example data, and a _CreateMeshGpuInstancing.ts snippet. This snippet offers the functionality to...

Read a GLB file
Read a CSV file with (lonDeg,latDeg,heightM) rows (included)
Create a GLB that uses EXT_mesh_gpu_instancing to create instances of the original GLB at these positions

Loading the resulting GLB in a Sandcastle (also included) will show the result:

But in a follow-up step, this might be generalized to optionally create a tileset that contains the proper transform. Maybe it's possible to address the goal of creating instanced models and https://github.com/CesiumGS/3d-tiles-tools/issues/130 with a unified solution here.


notifyListeners is not fired inside an async function

In the code below the notifyListeners is fired for the first function but not the second one. Is this a known bug?
  void toggleMapType() {
    this.mapType = this.mapType == MapType.normal ? MapType.satellite : MapType.normal;
    notifyListeners(); // this works
  }

    Future<void> fetchPlacesByKeywordAndPosition(String keyword, double latitude, double longitude) async {

      final result = await Webservice().fetchPlacesByKeywordAndPosition(keyword, latitude, longitude);
      this.places = result.map((place) => PlaceViewModel(place)).toList();
      notifyListeners();  // this does not
  }

Hi @azamsharp
This platform is not met for assistance on personal code.
Please see https://flutter.dev/community for resources for asking questions like this,
you may also get some help if you post it on Stack Overflow.
You might want ti take a look to this question.
Closing, as this isn't an issue with Flutter itself,
if you disagree please write in the comments and I will reopen it
Thank you

Hi @azamsharp
does the proposed solution works for you?
thank you

No it did not. Also this is the bug I am reporting
Sent from my iPhone

On Nov 14, 2019, at 6:19 AM, Francecsco Iapicca<EMAIL_ADDRESS>wrote:

Hi @azamsharp
does the proposed solution works for you?
thank you
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Is this the method in question?
https://api.flutter.dev/flutter/foundation/ChangeNotifier/notifyListeners.html

It seems the answer on stackoverflow is misleading : ChangeNotifier.notifyListeners does not call scheduleMicrotask
@azamsharp Calling notifyListeners in a Future should work.
Your sample code looks good. If it does not work as expected, there may be another reason :

Where is this code ? In a class that extends ChangeNotifier ?
How fetchPlacesByKeywordAndPosition is invoked ?
...

A full exemple is needed to find the problem.

Here is the GitHub repo but in this one I just cannot changeNotifier to
work even without promises.
https://github.com/azamsharp/AzamSharp-Weekly/tree/master/hello_networking
On Fri, Nov 15, 2019 at 4:10 AM Bruno Leroux<EMAIL_ADDRESS>wrote:

It seems the answer on stackoverflow is misleading :
ChangeNotifier.notifyListeners does not call scheduleMicrotask
@azamsharp https://github.com/azamsharp Calling notifyListeners in a
Future should work.
Your sample code looks good. If it does not work as expected, there may be
another reason :

Where is this code ? In a class that extends ChangeNotifier ?
How fetchPlacesByKeywordAndPosition is invoked ?
...

A full exemple is needed to find the problem.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/44848?email_source=notifications&email_token=AAAEBXGNGS5SBTRMEHO6UYTQTZYQ5A5CNFSM4JNCYLM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEE6V3I#issuecomment-554298093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAEBXFLZUNDLA5J4DGMFJ3QTZYQ5ANCNFSM4JNCYLMQ
.

--
Interested in learning development! Check out courses on Udemy.
https://www.udemy.com/user/mohammad-azam-2/

I found the issue. I was using a new webservice instance instead of using
ws. Now it works as expected. Thanks!
On Fri, Nov 15, 2019 at 8:33 AM Mohammad Azam<EMAIL_ADDRESS>wrote:

Here is the GitHub repo but in this one I just cannot changeNotifier to
work even without promises.
https://github.com/azamsharp/AzamSharp-Weekly/tree/master/hello_networking
On Fri, Nov 15, 2019 at 4:10 AM Bruno Leroux<EMAIL_ADDRESS>wrote:

It seems the answer on stackoverflow is misleading :
ChangeNotifier.notifyListeners does not call scheduleMicrotask
@azamsharp https://github.com/azamsharp Calling notifyListeners in a
Future should work.
Your sample code looks good. If it does not work as expected, there may
be another reason :

Where is this code ? In a class that extends ChangeNotifier ?
How fetchPlacesByKeywordAndPosition is invoked ?
...

A full exemple is needed to find the problem.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/44848?email_source=notifications&email_token=AAAEBXGNGS5SBTRMEHO6UYTQTZYQ5A5CNFSM4JNCYLM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEE6V3I#issuecomment-554298093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAEBXFLZUNDLA5J4DGMFJ3QTZYQ5ANCNFSM4JNCYLMQ
.

--
Interested in learning development! Check out courses on Udemy.
https://www.udemy.com/user/mohammad-azam-2/

--
Interested in learning development! Check out courses on Udemy.
https://www.udemy.com/user/mohammad-azam-2/

Great !
@iapicca Looks like you can close this issue :-)

Hi @azamsharp
I'm glad that you solved the problem
thank you for letting me know


bump alpine and python version

openssl-dev used instead of libressl-dev

Merge will come? ;)

Thank you for the PR!


Allow custom empty files

Hello,
this might be a silly PR (and pretty small one) but I have encountered an issue when working on a PR to pandas.
Basically, I have a script that updates a custom wordlist with contributors names, but if the file is empty and I run the spelling check, then an exception is thrown IndexError since the check on line 116 assumes that the file is not empty.
Of course, there is a work around this, but perhaps this could be useful to people that would like to have an empty file and then update it in the future.

Nice fix, thank you!

I tagged and published version 4.2.0 with this fix.


Channel naming changes / minor changes

Corrected the channel naming of Failure counts, to make it more clear what it stands for.
Fails and Failed are very easy to confuse.
Also changed SessionResport to SessionsReport
Didn't test yet.

Thanks for contributing!
Although I like the changes I am not sure that changes to the channel names are a good idea. Existing Installations will break after updating... And you can not remove a channel in PRTG...

I've also had to remove prtg sensors and readd them in the past
It also happens on deleting, disabling, removing, renaming jobs etc., so I guess people should be used to readding sensors. At least, that's my experience so far.
I really hope prtg takes care of that feature request at some point...

Could we get this as a second branch perhaps, at least for now?

Hello,
as long as the channel naming is changed I will not merge this Pull Request.
If you need the actual state, just create a fork into a new repositoryor create a clone.


System Administration Activities (CAT)

Develop queries: 24 hrs
Based on a meeting held with Chris on 1/25/24, this functionality will be included in a post-2.0 release.

Created ticket #6382 to create scripts instead of developing functionality.


UIKitView layout bug

Describe the bug
UIKitView displays behind another view within a Column, let's look at the screenshot, the text view on iPhone is behind the text box.

Affected platforms
Select one of the platforms below:

iOS

Versions

Kotlin version*: 1.9.0
Compose Multiplatform version*:  1.5.0
OS version(s)* (required for Desktop and iOS issues): 16
OS architecture (x86 or arm64): x86

To Reproduce
// common
@Composable
fun Reproduce() {
    Column(Modifier.fillMaxWidth().padding(8.dp)) {
        Row {
            OutlinedTextField(
                value = "",
                onValueChange = { },
                modifier = Modifier.weight(1f),
            )

            Button(
                onClick = {
                },
                modifier = Modifier.align(Alignment.CenterVertically),
            ) {
                Text("Test")
            }
        }

        TestPlatformView(Modifier.weight(1f))
    }
}
expect fun TestPlatformView(modifier: Modifier)

// Android
@Composable
actual fun TestPlatformView(modifier: Modifier) {
    AndroidView(
        factory = { context ->
            TextView(context).apply {
                this.text = Array(100) { "$it" }.joinToString("\n")
            }
        },
    )
}

// iOS
@Composable
actual fun TestPlatformView(modifier: Modifier) {
    UIKitView(
        factory = {
            UITextView().apply {
                this.text = Array(100) { "$it" }.joinToString("\n")
            }
        },
        modifier = modifier,
    )
}

Expected behavior
UITextView shouldn't be overlapped.
Additional context
If wrap UIKitView with Box, the issue will be gone:
Box(modifier) {
   UIKitView(modifier = Modifier.fillMaxSize(), ...)
}

If you replace TestPlatformView(Modifier.weight(1f)) with TestPlatformView(Modifier.fillMaxSize()) it's also working well.

Maybe a related issue on JVM:

UIKitView widget doesn't properly communicate its layout when used alone.

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


fort commanders - incompatabilities

with fort commanders when the Kill the commander objective pops up (when low on enemy troops), when you enter the fort he isn't in there and it says
completed: attacking forces 0
making the fort battle impossible to complete

additionally battle for fort neugard (imperial defence) still will keep going after all my team is dead and i have fast travelled away

with fort commanders when the Kill the commander objective pops up (when low on enemy troops), when you enter the fort he isn't in there and it says

completed: attacking forces 0
making the fort battle impossible to complete

I will take a look at this.

additionally battle for fort neugard (imperial defence) still will keep going after all my team is dead and i have fast travelled away

But this I need to take a look at. Where did you teleport to? Battle for Fort Neugrad should not be happening at all (maybe it is firing on Defense)
The reason being... Battle for Fort X sieges may finish. But the fort sieges do not actually complete until you are out of the Fort Location which unfortunately for the Stormcloaks is so close to the camp that the Fort Neugrad location overlaps with the Falkreath Stormcloak Camp. So I hardcoded the Battle of fort Neugrad to happen at all. (Note this works differently from the 'Rescue from Fort Neugrad' (CWMission04) quest)

Yeah sorry defence mission

Will also point out with the offence fort mission (not neugrad) there was a marker to kill the commander but he didn’t spawn in which I think is because the enemy ran out of troops before I could kill him

This should be resolved now. You will probably need both https://github.com/schofida/CWORR/releases/tag/v1.0.15a and https://github.com/schofida/CWORR/releases/tag/SCWOFC


KAFKA-9620: Do not throw in the middle of consumer user callbacks

One way of fixing it forward.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

test this please

@guozhangwang should be good to review again

Got 1/2 green build

The failure was due to non related flaky test:
org.scalatest.exceptions.TestFailedException: Timed out before consuming expected 2700 records. The number consumed was 1620.
Stacktrace
org.scalatest.exceptions.TestFailedException: Timed out before consuming expected 2700 records. The number consumed was 1620.
	at org.scalatest.Assertions.newAssertionFailedException(Assertions.scala:530)
	at org.scalatest.Assertions.newAssertionFailedException$(Assertions.scala:529)
	at org.scalatest.Assertions$.newAssertionFailedException(Assertions.scala:1389)
	at org.scalatest.Assertions.fail(Assertions.scala:1091)
	at org.scalatest.Assertions.fail$(Assertions.scala:1087)
	at org.scalatest.Assertions$.fail(Assertions.scala:1389)```

test this please

test this please

Does this affect AK 2.5?

From our soak observations it only affects 2.5 not now; there's a major tech debt cleanup that only get into trunk so this issue is likely a regression in trunk only.


125194 trib to Missinka upstream modelled crossings

there are numerous upstream crossings modelled here but nothing mentioned in the background of the site.  we confirmed that the first crossign was not present and there are many crossings that can be xreferenced in bcfishpass repo as not present after review of aerial imagery.  @Mateo9569 - please add to bcfishpass repo. I will deal with the report text

This was done in this PR #376. Forgot to close this issue.


net/http/httputil: DumpRequest doesn't dump Content-Length field in the header

see http://play.golang.org/p/8UNjmEa6AP

What is the status on this issue?  Has it been accepted that we should improve DumpRequestOut or should DumpRequest be fixed?
I ask because I've worked offline on a CL https://go-review.googlesource.com/21790 to get this behavior in for DumpRequest it but I have no trouble scrapping or updating it (it was just a warm up CL).


includeLatestTag is no longer supported

According to this issue the includeLatestTag input is no longer used. It should get removed from the docs.

Sorry for the inconvenience caused and thanks for reporting this. We are updating this in our docs.


Cannot determine recent change or authors (unsaved changes)

I'm not in any git project, yet the message "Cannot determine recent change or authors (unsaved changes)" appears. Is this intended to appear even if I am not in a git project?
This message is helpful when I am working on a git project, but for me it is useless in a normal document.

GitLens Version: 6.12
VSCode Version: 1.19.0-insider
OS Version: Windows 10

Steps to Reproduce:

Open a new file and save it for example as test.md
Write something

I get the same notation on nearly every line in an untracked file in a git project.

This is definitely NOT by design. I have never noticed this -- it took me a little bit to reproduce too. It will be fixed in the next GitLens release. Sorry for the inconvenience and thank you both for the report!


CURL Error

Please, could somebody tell me what is this?, I'd looking for it on stackoverflow, but the entries there are too old, and the only solution I'd found doesn't work for me, they told to use Guzzle v4, but that version is not maintained anymore, please, request your help, regards.
cURL error 77: error setting certificate verify locations:
CAfile: /Users/user/Projects/clinica/app/var/jwt/private-test.pem
CApath: none (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)

Looks like your cacert is invalid. I don't know why, but you might want to verify that you are able to read from the file and that the contents are correct.


[Bug] Access token expired but hasValidAccessToken() still returns true

Describe the bug
OAuthService.hasValidAccessToken() returns true but the token actually expired.
I looked at the session storage. The expired access_token is still there but expires_at is not.
In this case, hasValidAccessToken() returns true.
Stackblitz example
It is a private project.
To Reproduce
I don't know how to reproduce it step by step.
I just used my angular application on Saturday. Then on Monday I tried to reload the page expecting to have the login button (when hasValidAccessToken() is false) but the app still worked as if hasValidAccessToken() is true.
Though it fails at calling the API (401 because the token is actually expired).
Therefore I had to remove the access_token from storage.
Expected behavior
OAuthService.hasValidAccessToken() returns false.
Desktop (please complete the following information):

OS: macOS Monterey
Browser: Firefox
Version: 96

Additional context
After I removed the access_token storage and made my app working again, I checked the storage and expires_at was not there. When is it supposed to be stored ?

I don't know how to reproduce it step by step.

Yikes, sorry to hear you're having issues, but not sure how you expect us to help then though? If we can't reproduce the issue, it's near impossilbe to reliably help without resorting to guessing at the cause. I think we'll need a repro in one form or another...

Thank you @jeroenheijmans for your reply.
I think I found the cause of the issue.
I couldn't see expires_at in the session/local storage so I looked into oauth-service.ts and it seems this information is based on the expires_in property in the access token response.
However this property is not required in the standard. Only recommended. That would explains why the authorization server (the one I work with) does not include it in its response.
Now my question is : shouldn't there be an alternative way of storing the expiration when expires_in is not provided in the access token response ?

Huh, interesting situation! I found the bit of the spec I think you refer to, RFC 6749 part 4.2.2:
  expires_in
         RECOMMENDED.  The lifetime in seconds of the access token.  For
         example, the value "3600" denotes that the access token will
         expire in one hour from the time the response was generated.
         If omitted, the authorization server SHOULD provide the
         expiration time via other means or document the default value.

Optional, but recommended indeed.
However, if it is omitted, then the way epiration works becomes non-standard (as in: not according to the standard). So not sure how the library could beforehand know how to handle this, as it's only aim is to be OAuth2/OpenID compliant?
I guess if there were suitable extension points you could influence this behavior if you want. And even though I very much personally / subjectively dislike the approach taken, there is one available in the library. Many methods on the service are protected so technically you could override methods like storeAccessTokenResponse.
Alternatively (and I'd personally prefer it because it relies on injection, not on inheritance) you could write interceptors to sniff out whatever alternative way for expiration your IDS provides, and set the expires_at item in storage.
Hope that helps!
PS. Out of curiosity, which IDS do you use? And what is the alternative they provide for token expiration times?

Just to add some extra information in case it can help someone else.
There is a config parameter to handle absence of expires_in property in token response : it is fallbackAccessTokenExpirationTimeInSec.


Add remap to coupler_put!

Purpose and Content
This PR adds remapping to the coupler_put! calls and changes the way that the remap operators are stored/accessed in the coupler.
Benefits and Risks
Having remapping at both the put! and get stages of the coupling enables the use of an exchange grid, should the user want one. This is optional, though also the standard in the wider coupling community. It's also nice to make put! and get more symmetric.
The way that maps are stored is also changed from keys with simA_to_simB naming convention to a key that is a tuple of the target and source spaces. This has some nice effects:

the naming system is abandoned and not necessary for the user to learn
it is not necessary to store exchange grid names, which would otherwise be necessary for accessing maps during coupler_put!` calls
it is much easier to build the maps automatically (see coupler_add_field! changes), likely making #67 easier to tackle.

In talking to @simonbyrne, a risk here is the time to hash spaces vs. names.
It should also be noted that a formal IdentityRemap operator is beneficial here and further simplifies some of the remap construction and coupler calls (since you can assume every call has an associated map, even if it does nothing). ClimaCore PR#793 adds this and should be treated as a dependency.
Linked Issues

Closes #65
#67

PR Checklist

[x] This PR has a corresponding issue OR is linked to an SDI.
[x] I have followed CliMA's codebase contribution and style guidelines OR N/A.
[ ] I have followed CliMA's documentation policy.
[x] I have checked all issues and PRs and I certify that this PR does not duplicate an open PR.
[x] I linted my code on my local machine prior to submission OR N/A.
[ ] Unit tests are included OR N/A.
[x] Code used in an integration test OR N/A.
[ ] All tests ran successfully on my local machine OR N/A.
[ ] All classes, modules, and function contain docstrings OR N/A.
[ ] Documentation has been added/updated OR N/A.

TODO:
Docs update
Update Sea Breeze experiment with changes
Update coupler_put! tests to include mapping checks.
One thing that needs to be thought out is the map construction. If there is an exchange space, we don't want to build maps by hand from one sim to another. One options is building the map during the first coupler_get calls, or whatever the equivalent would be during initialization of the coupler. This would build the maps for accessing fields from the coupler, while the maps for putting fields in the coupler are built during coupler_add_field.
The user probably doesn't need to call coupler_add_map! directly anymore!

this is pretty out of date and I don't think it will be merged


How can I check if a user has a role?

Hey! I want to check if a user has a role.
How?

 $roleID = ROLE_ID_FROM_DISCORD; if(is_object($member->roles)) {   foreach($member->roles as $memberRole) {     if($memberRole->id == $roleID) return TRUE;   } }


Added Sheet for The Witcher Pen and Paper RPG

Character Sheet for new Witcher Pen and Paper RPG by R. Talsorian.

Alright, updated. Shame there isn't a way for the preview images to work
like a gallery or something similar, would be pretty cool.
On Thu, Sep 13, 2018 at 1:56 AM Andreas J<EMAIL_ADDRESS>wrote:

@Anduh requested changes on this pull request.
All important parts seems to be right.
Minor things:

don't know if it's possible to have several previews images, haven't
seen other sheets with more than one. If you know one, I wanna know :D
Coal Powered Puppet have been working on a Witcher sheet for some
time, pity you two didn't sumble into eathother earlier.
roll20userid is the numberical roll20userid for your account, and I
think it only needs to if you want the "sheet author" title to be displayed
on your account. If you donct know the number, you can go to the menu "My
profile" on Roll20, and the number is shown in the url

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/Roll20/roll20-character-sheets/pull/4192#pullrequestreview-154948925,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVVrxejpxQBwy3GhLRhftQ25WYXRbGu7ks5uagGsgaJpZM4WmGmu
.

That's an interesting work around. I reckon it's fine with just the first
tab preview since you can see there's other tabs too the sheet.
On Fri, Sep 14, 2018, 11:21 AM Andreas J<EMAIL_ADDRESS>wrote:

@Anduh approved this pull request.
I haven't seen it, doesn't mean it's impossible. You could hyperlink to
them in the "instructions" section of the sheet.json, or possibly even show
the pictures, as the section seems to use some Markdown-like syntax(but
needs \n for linebreak), possibly resulting in the possibility of showing
images.
I have meant to ask what syntax the "instructions"-section uses, as it
isn't clear.
You can hyperlink like this: link somewhere
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/Roll20/roll20-character-sheets/pull/4192#pullrequestreview-155567162,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVVrxUxmG4FxKBB3NhnOYLF7cxKKuQ_Aks5ua9d1gaJpZM4WmGmu
.

Here  is an example of a "instruction" section with some more formatting and hyperlinks. HTML tags doesn't seem to works, like how in this official sheet.json.

@HappyDamnTrails
I had to revert this change. Your pull request is for the wrong Roll20 branch. Your pull request needs to be for Roll20:master

Are you still taking feedback on the sheet at all? I was playing around with filling some of it out for characters on a game I've been waiting to do and some of the values under Magic need to be altered to accept values that aren't just numerical.
For example the option for "Duration". While some Hexes/Rituals/Spells last a set amount of rounds, others like "Glamour" have a duration of 1d6/hours and the boxes don't accept anything but a numerical value. Other spells like  "Telepathy" are always Active and cost 1 Stamina/round to upkeep. "Brand of Fire" is instant and immediate and the Ritual "Spirit Seance" is Permanent and doesn't really have a duration. I've put a 0 in there for now as a placeholder.
The "DAM" box when adding new spells is also significantly smaller than its first counterpart with no way to resize. I've attached a kind of example of what it ends up looking like.

Thanks for the feedback. As long as people are using the sheet and finding
things they'd like me to tweak I'll do weekly updates to account for them.
The sheet as it is represents how my personal group has come to like it
after about a month of use, but having a lot more eyes on it will be
helpful.
On Thu, Sep 20, 2018, 3:48 PM Moonshaft<EMAIL_ADDRESS>wrote:

Are you still taking feedback on the sheet at all? I was playing around
with filling some of it out for characters on a game I've been waiting to
do and some of the values under Magic need to be altered to accept values
that aren't just numerical.
For example the option for "Duration". While some Hexes/Rituals/Spells
last a set amount of rounds, others like "Glamour" have a duration of
1d6/hours and the boxes don't accept anything but a numerical value. Other
spells like "Telepathy" are always Active and cost 1 Stamina/round to
upkeep. "Brand of Fire" is instant and immediate and the Ritual "Spirit
Seance" is Permanent and doesn't really have a duration. I've put a 0 in
there for now as a placeholder.
The "DAM" box when adding new spells is also significantly smaller than
its first counterpart with no way to resize. I've attached a kind of
example of what it ends up looking like.
[image: magic]
https://user-images.githubusercontent.com/20808506/45846112-87b6ad80-bcec-11e8-8324-d958f6f3519a.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Roll20/roll20-character-sheets/pull/4192#issuecomment-423327798,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVVrxaEsGZzlAnOHfLP4JPWH3HhPvgEDks5uc_8CgaJpZM4WmGmu
.

Awesome, thanks so much. I'd also like to suggest being able to create decimal values for items as well--especially components since a lot of them are either .1 or .4 or something depending on how many of said item one has:

Also, when rolling a skill (ie Deciet, Awareness, etc.) what additional modifier is the pop up asking for?

Thanks for the feedback. As long as people are using the sheet and finding things they'd like me to tweak I'll do weekly updates to account for them. The sheet as it is represents how my personal group has come to like it after about a month of use, but having a lot more eyes on it will be helpful.

Huh, that's odd then. I know I don't have any other values in there but it's not very friendly to decimals. It might just be a box size issue or something:

Have you considered putting a kind of 'cheat box' in there for Resolve and other Defensive Totals, as well as an indicator on certain skills that they cost an increased amount when leveling up like a (2) at the end of the Skill name? i.e Crafting (2)
There's no separate box to add the Attack Bonus on the weapon of choice (Attr+Associated Skill). Is that bonus just being placed in the 'Damage' box to help save space? Just want to make sure I'm not missing something.
Having a dedication section in the Personal History section would be awesome too for those who rolled additional Friends or Acquaintances while making their characters and need to flesh them out via the provided tables in the Handbook.

You should be able to put a decimal value in. If the box is too narrow that's something I can fix pretty easily. The modifier the pop-up asks for is just a way for you to easy be able to add situational or other modifiers that might come up in a game.
…
On Thu, Sep 20, 2018, 4:17 PM Moonshaft @.***> wrote: Awesome, thanks so much. I'd also like to suggest being able to create decimal values for items as well--especially components since a lot of them are either .1 or .4 or something depending on how many of said item one has: [image: image] https://user-images.githubusercontent.com/20808506/45846921-d36a5680-bcee-11e8-90c4-b86c1561395f.png Also, when rolling a skill (ie Deciet, Awareness, etc.) what additional modifier is the pop up asking for? Thanks for the feedback. As long as people are using the sheet and finding things they'd like me to tweak I'll do weekly updates to account for them. The sheet as it is represents how my personal group has come to like it after about a month of use, but having a lot more eyes on it will be helpful. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#4192 (comment)>, or mute the thread https://github.com/notifications/unsubscribe-auth/AVVrxUK41hIJ_ELIkyk5SxfzBBYsmOxDks5udAXQgaJpZM4WmGmu .


[terra-alert] Add deprecation notice.

Summary

Added a deprecation notice.

Closes #3369
Thank you for contributing to Terra.
@cerner/terra

Closing this PR. Due to delay in terra-application v2 release, marking these components deprecated seems premature.
The deprecations of this will be done once terra-application v2 is released.
cc/ @ryanthemanuel @ShettyAkarsh


stable/memcached: Add support for metrics

What this PR does / why we need it:
This pull request adds memcached_exporter as a sidecar container to the memcached pod.
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:

/assign @linki

Ping @gtaylor

/ok-to-test


space_before and space_after seems to be overwritten

Hey,
I am trying to add paragraphs after a certain section in an existing document.
Adding those paragraphs works fine, but formatting them has proven to be a challenge.
Following is my rough code:
for paragraph in document.paragraphs:

      if fin == paragraph.text:

          for comment in spez:

              new_p = OxmlElement("w:p")
              paragraph._p.addnext(new_p)
              new_para = Paragraph(new_p, paragraph._parent)

              new_para.style = "List Bullet"
              new_para.paragraph_format.keep_together = True
              new_para.paragraph_format.alignment = WD_ALIGN_PARAGRAPH.LEFT
              new_para.paragraph_format.first_line_indent = Cm(-0.4)
              new_para.paragraph_format.right_indent = Cm(3.99)
              new_para.paragraph_format.left_indent = Cm(0.78)
              new_para.paragraph_format.space_before = Pt(6.65)
              new_para.paragraph_format.space_after = Pt(0)
              new_para.text = comment
              new_para.paragraph_format.line_spacing_rule = WD_LINE_SPACING.MULTIPLE
              new_para.paragraph_format.line_spacing = 1.04

The problem is, that the new_para.paragraph_format.space_before = Pt(6.65) is seemingly overwritten by the checkbock:

(This is checked for the newly created paragraph).
I tried to apply the solution provided here but it seems like there is no w:pPr/w:contextualSpacing in the xml of my document to be found.
At least I am getting a "list index out of range" error in for the Line:
cspacing = new_element.xpath(r'w:pPr/w:contextualSpacing')[0] which is provided in the solution.
Checking the new_para -> paragraph_format -> _element -> xml content i found the following content inside the <w:pPr> Tag:
<w:pPr>\n    <w:pStyle w:val="Aufzhlungszeichen"/>\n    <w:keepLines/>\n    <w:spacing w:before="133" w:after="0" w:lineRule="auto"/>\n    <w:ind w:hanging="227" w:right="2262" w:left="442"/>\n    <w:jc w:val="left"/>\n  </w:pPr>\n
It seems to be such a simple task. Sorry, if I am missing something simple.
Looking forward to replies!

I think the xml, that I've read is not the full representation of what there is in the file.

I've unzipped the docx file and in the styles.xml file I found the <w:contextualSpacing/>.

But the fact remains, that I sadly can't seem to get a hold of it in my code --> cannot get rid of it. Any ideas on how I can deactivate the "Don't add space between paragraphs of the same style"-Option?
Thanks!

What I've done now was:

In my created file (which had the checkbox ticked) i found in the /word/document.xml, that "contextualSpacing" does not exist.
I then opened that docx-file and unchecked it manually on the whole document.
looking at the /word/document.xml of the edited docx I now found: <w:contextualSpacing w:val="0"/>
in the file.

So i think rather then removing it, i need to set it as being false. Can someone help me with how this can be accomplished?
--> Adding <w:contextualSpacing w:val="0"/> into <w:Ppr> for each paragraph, that i've created the following way:
new_p = OxmlElement("w:p")
paragraph._p.addnext(new_p)
new_para = Paragraph(new_p, paragraph._parent)

I did it!
 new_p = OxmlElement("w:p")
 paragraph._p.addnext(new_p)
 new_para = Paragraph(new_p, paragraph._parent)

 wp = new_para._p
 wPpr = wp.pPr
 w = OxmlElement('w:contextualSpacing')
 w.set(qn('w:val'), '0')
 wPpr.append(w)
 wp.append(wPpr)

With this, the checkbox is finally unchecked. I think other (new) users would definitely appreciate it if the library would set this itself as soon as space_before or space_after hast been set. I'll close this now, but if someone has some questions regarding my problem, I'll gladly reply!

I did it!
 new_p = OxmlElement("w:p")
 paragraph._p.addnext(new_p)
 new_para = Paragraph(new_p, paragraph._parent)

 wp = new_para._p
 wPpr = wp.pPr
 w = OxmlElement('w:contextualSpacing')
 w.set(qn('w:val'), '0')
 wPpr.append(w)
 wp.append(wPpr)

With this, the checkbox is finally unchecked. I think other (new) users would definitely appreciate it if the library would set this itself as soon as space_before or space_after hast been set. I'll close this now, but if someone has some questions regarding my problem, I'll gladly reply!

hi，I have the same problem,Paragraph func ,what is it ? thank you 。Waiting for your reply


Git repository: context deadline exceeded

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
While testing a manifest with three git repository.
I notice that from time to time that one git clone is failing with error message "context deadline exceeded"
scenario-3
----------
DEBUG: stage: git-checkout

DEBUG: checkout branch "main", based on "main" to directory "/tmp/updatecli/gitgithub_com_updatecli_updatecli_git"
ERROR: ✗ context deadline exceeded

Expected Behavior
It shouldn't
Steps To Reproduce
No response
Environment
- OS:Linux
- updatecli:v0.20.1

Anything else?
No response

Can you share the manifest, so we can work on reproducing (and ensure it is not only a network issue) ?

I couldn't reproduce the issue reliably.

After a discussion with @dduportal today, we identify the root cause of the issue.
It comes from the way we identify what should be clone in parallel. In the context of GitHub scm, we use the combo owner/repository if a repository need to be cloned, but when two similar scm configurations needs to be clone, we end up in a situation where different Go routines try to clone the same repository in the same location
https://github.com/updatecli/updatecli/blob/main/pkg/core/engine/main.go#L91
Ideally each scm should provide a function such as CacheID so we could clearly identify if two scm configuration are similar enough to be clone once in the same location


[Bug Report] vector_entry_point not working as expected

Describe the bug
I was expecting that when defining the vector_entry_point in the gym.register function that it would defer to my custom vectorized create function instead of looping over the environment create method and wrapping with sync/async. for my env, i wrote custom vectorization code, but its totally useless when wrapped with sync/async vec wrapper.
Code example
Inside of "path/to/vec_func.py"

import gymnasium as gym
class CustomVecEnv(gym.vector.VectorEnv):
    pass

def vec_func(*args, **kwargs):
    return CustomVecEnv(*args, **kwargs)

gymnasium_register(
    id="MyEnv-v0",
    entry_point="path/to/func:func",
    vector_entry_point="path/to/vec_func:vec_func",
)

then
env = gym.vector.make("MyEnv-v0")

doesn't work, for me it just hangs, but if you get it not to hang it should return a sync/async instance of the env instead of returning the custom class env definition.

### System info

`gymnasium                     0.28.1`
`ubuntu 20.04`
`python = 3.8.12`

### Additional context

i'm using a custom vectorized environment. I can't share it, but it should be purely an interface issue.

also, what is `vector_entry_point` even doing?

### Checklist

- [X] I have checked that there is no similar [issue](https://github.com/Farama-Foundation/Gymnasium/issues) in the repo

Hey, could you try using the 'gymnasium.make_vec' function?

@pseudo-rnd-thoughts yeah, but i have to specify the vectorization method as custom, right? i'm creating a PR that auto-determines custom when a custom vectorization method is sepcified. otherwise it'll default to "async" as usual. that okay?

@pseudo-rnd-thoughts PR is open https://github.com/Farama-Foundation/Gymnasium/pull/626
it should be ready to go, ran pre-commit and everything + a test


Block auction

In the current implementation multiple bids in the same block incentivize front running. The first successful bid effectively cancels any subsequent bids although they may be a higher offer.
This pr will implement a kind of internal block auction. The first bid in a block will behave normally as before, however any subsequent offers in the block will check if the offer amount is higher than the clone's worth at the last successful bid, if so then the offer succeeds and the last bidder is refunded the clone's worth. Fees are still collected, however they are now split between the subsidy pool and the clone's owner at the previous block, as to not further incentivize front running within the block.

I was considering another design where fees are refunded completely within the block, which I think is more desirable, but was slightly more complex to implement.

will be writing new tests specifically for the refund mechanism shortly.
will need to modify getMinAmountForCloneTransfer to return the proper value, and rework a bunch of tests to compensate for this change

Still finding a couple edge cases that I'm working out

So, i noticed that in the else block of duplicate() fees were being calculated according to the clone's worth or auction price instead of the total amount transferred to the contract. So I fixed that in this pr and reconfigured the math in getMinAmountForCloneTransfer() to accurately reflect the calculation.


Kt quicklinks button

Created a quick links page that creates buttons for all assigned trackers to user so instead of going to dashboard page, they get it to a quicker way. Idea came from if user is in pain, and doesn't want to go the dashboard and scroll down... they can go to quick links.


Support pentavalent nitrogen as per SMILES

Describe the bug
Pentavalent nitrogen in SMILES is not supported (related to #358).
To Reproduce
> from rdkit import Chem
> m = Chem.MolFromSmiles('FC1=C(F)C(SCC[NH3]Cl)=C(F)C(F)=C1S(=O)(NC)=O')
[09:35:56] Explicit valence for atom # 8 N, 5, is greater than permitted

Expected behavior
Pentavalent nitrogen seems OK according to OpenSMILES v1.0 specification, so I would expect to get the properly constructed molecule object.
Configuration (please complete the following information):

RDKit version: 202009.5-1 (as packaged in Debian, installed via apt-get install)
OS: Debian unstable
Python version (if relevant): 3.9.2

This is by design. The SMILES syntactically legal but the molecule itself is chemically unreasonable. If you want to read it in anyway you need to turn off sanitizer ion. There’s a lot of information out there on how to do this and what the consequences are.

I'm closing this because it looks like the question is answered. Please reopen if necessary.

Thanks for prompt response. I will look into turning off the sanitization.


Fix Frontend Tests

Frontend-tests currently don't work properly (cypress doesn't properly recognise components from inkline)
Possible fixes:

look if we find another testing framework for component tests or just drop them (risk of big and slow e2e tests)
try out whether component tests work without any component library / with another one (eg bootstrap, ...)

Closing  this, see #107


Play now not syncing everything

Environment

Browser:Chrome
Browser Version: <63
Operating System:

Amplitude.js Version: 3.2

Issue description
Amplitude.playNow(song); is syncing some stuff with the selected song, for example the cover, but not the index of the actual song, thus not transforming amplitude-paused into amplitude-playing. Once the next / prev button is clicked, the index is modified correctly, but using the playNow() is kinda breaking the experience.
Steps to reproduce the issue
In my case :

I take the first song of a playlist, and make it play :

const song = Amplitude.getSongAtPlaylistIndex(playlist, 0);
Amplitude.playNow(song);

Song is playing, but Amplitude.getActiveIndex() is not returning the right index of the song, its staying on the 0 meanwhile I am supposed to be at the "global" index of 3.
The song button I have for index 3 is not updated with the classes, the button is not showing that the song is played.

What is expected?

The button should have the right class when playing, also the getActiveIndex() should return the actual activeIndex of the song that is played
Additional details / screenshots

Track 5 is currently playing, button does not have the right class
https://cl.ly/102T3r3E1813
Console log of different indexes available on AmplitudeJS, all are returning 0, but it is supposed to send give 4
https://cl.ly/020W1T3I3T0q

@danpastori PlayNow does not call song_change :-/

This is fixed here: https://github.com/521dimensions/amplitudejs/tree/dev


Incompatiblity with recordStackTraceAtLevel from the Logging package

Platform
Flutter Mobile
Obfuscation
Enabled
Debug Info
Enabled
Doctor
[!] Flutter (Channel unknown, 3.10.6, on macOS 13.4 22F66 darwin-x64, locale en-GB)
    ! Flutter version 3.10.6 on channel unknown at /Users/barabas/src/flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/docs/get-started/install.
    ! Unknown upstream repository.
      Reinstall Flutter by following instructions at https://flutter.dev/docs/get-started/install.
    • Framework revision f468f3366c (3 weeks ago), 2023-07-12 15:19:05 -0700
    • Engine revision cdbeda788a
    • Dart version 3.0.6
    • DevTools version 2.23.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/barabas/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/barabas/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] Connected device (3 available)
    • Pixel 5 (mobile) • 0C221FDD4003LH • android-arm64  • Android 13 (API 33)
    • macOS (desktop)  • macos          • darwin-x64     • macOS 13.4 22F66 darwin-x64
    • Chrome (web)     • chrome         • web-javascript • Google Chrome 113.0.5672.126
    ! Error: iPhone XR has recently restarted. Xcode will continue when iPhone XR is unlocked. (code -14)

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Version
7.9.0
Steps to Reproduce

Set up a project using the logging package integration
Set recordStackTraceAtLevel = Level.SEVERE. The makes Logging automatically set the error to a string, and assign the current stacktrace to the log.
Fire a severe log: Logger('test').severe('hello world')

The snippet from Logger.log that auto generates the String is:

    if (stackTrace == null && logLevel >= recordStackTraceAtLevel) {
      stackTrace = StackTrace.current;
      error ??= 'autogenerated stack trace for $logLevel $msg';
    }

Expected Result
Error is captured, and sentry does not print internal errors.
Sentry logging integration should be compatible with all types accepted by the Logging package. The signature or log is:
void log(
    Level logLevel,
    Object message,
    [Object? error,
    StackTrace stackTrace,
    Zone? zone]
)

Therefore, Sentry should not have internal errors regardless of the type of the error. At the very least, it needs to support String for this use case. I guess this can be worked around by constructing an Exception from the String, but this must be done inside Sentry.
Actual Result
Sentry logs an internal error:
[sentry] [info] Throwable type: String is not supported for associating errors to a transaction.
         Invalid argument (object): Cannot be a string, number, boolean, record, null, Pointer, Struct or Union: "autogenerated stack tra...
         #0      checkValidWeakTarget (dart:_internal-patch/internal_patch.dart:220:5)
         #1      Expando.[] (dart:core-patch/expando_patch.dart:31:5)
         #2      _WeakMap.get (package:sentry/src/hub.dart:619:22)
         #3      Hub._assignTraceContext (package:sentry/src/hub.dart:559:37)
         #4      Hub.captureEvent (package:sentry/src/hub.dart:94:19)
         <asynchronous suspension>
         #5      LoggingIntegration._onLog (package:sentry_logging/src/logging_integration.dart:58:7)
         <asynchronous suspension>

It seems like the error is captured regardless. Maybe it will be missing from the transation that was in progress.
Are you willing to submit a PR?
None

Hi,
thank you for the message and the details. We can't reproduce the behavior.
 Here is an example stack trace reported to Sentry.
Code snippet:
recordStackTraceAtLevel = Level.SEVERE;
final log = Logger('Logging');
log.severe('My Logging test severe');

Can you share a minimal reproducible example?

Hi @maBarabas
Yes, the errors and transactions won't be linked if the error type isn't supported.
https://github.com/getsentry/sentry-dart/blob/d78342459141e1798a213da74ad13e89235cbe31/dart/lib/src/hub.dart#L605-L610
This is just an info logging so nothing to be worried about.

I guess this can be worked around by constructing an Exception from the String, but this must be done inside Sentry.

This could be done but the problem is that if the same error is thrown twice, since a new object is constructed every time, the expando won't identify as the same object.
It's a limitation of the Expando and WeakReference classes in Dart.
Maybe if the wrapper exception overrides bool operator ==(Object other) and int get hashCode;, I have to check this out.


update Microsoft.Azure.Functions.Worker.Extensions.EventGrid to latest version of Microsoft.Azure.WebJobs.Extensions.EventGrid to fix CVE-2024-29992

Description
Microsoft.Azure.Functions.Worker.Extensions.EventGrid v3.4.1 depends on Microsoft.Azure.WebJobs.Extensions.EventGrid v3.4.1 which depends on Microsoft.Extensions.Azure v1.7.3 which depends on Azure.Identity v1.11.0 which has a vulnerability CVE-2024-29992
Once Microsoft.Azure.WebJobs.Extensions.EventGrid is updated (tracked at https://github.com/Azure/azure-sdk-for-net/issues/45233), an updated version of Microsoft.Azure.Functions.Worker.Extensions.EventGrid should be released to consume it.
Steps to reproduce
use v3.4.1 and notice the CVE detected

looks like Microsoft.Azure.WebJobs.Extensions.EventGrid has released v3.4.2 - https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EventGrid#versions-body-tab

Yes I am currently working on updating this package

Released the packages - https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.EventGrid/3.4.2


How to change default backOff for all apps?

The default backoff (used if not specified) is defined in code without the ability to override. If you want to change the backoff for an app, please define it.


channels registered with connection.NotifyClose not always get notified

I've encountered a bug with RabbitMQ v3.6.9 - it seems that under certain conditions channel that is registered with connection.NotifyClose is not actually notified about connection closure.
Here are the logs with annotations:
// block on reading from channel that is registered with NotifyClose
May 14 11:35:08 ip-10-0-6-12 wss-server[9857]: Start to monitor connection
May 14 11:35:09 ip-10-0-6-12 wss-server[9857]: Configuring amqp command consumer
May 14 11:35:09 ip-10-0-6-12 wss-server[9857]: Started AMQP command consumer
May 14 11:35:38 ip-10-0-6-12 wss-server[9857]: AMQP command consuming stopped, connection to rabbitmq lost

// here connection monitor unblocked, got result from channel and logged it.
May 14 11:35:38 ip-10-0-6-12 wss-server[9857]: AMQP connection problem: Exception (320) Reason: "CONNECTION_FORCED - broker forced connection closu
May 14 11:35:38 ip-10-0-6-12 wss-server[9857]: AMQP reconnection problem: dial tcp <IP_ADDRESS>:5672: connect: connection refused
... // rabbit-mq service gets restarted
May 14 11:35:44 ip-10-0-6-12 wss-server[9857]: AMQP reconnection problem: dial tcp <IP_ADDRESS>:5672: connect: connection refused

// client successfully reconnected to rabbit-mq
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Validating RabbitMQ Exchanges configuration
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Notifying listeners about successful AMQP reconnection
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: regenerating the bind queue after AMQP reconnect
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Reinitializing AMQP consumer
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Stopped AMQP command consumer
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Configuring amqp command consumer

// once again block on reading channel that is registered with NotifyClose
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Start to monitor connection

// here is the problem - some unexpected command received, it causes connection closure without notification
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: could not bind device to the command exchange: Exception (503) Reason: "unexpected command received"
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Error in AMQP dead commands consumer: Exception (503) Reason: "unexpected command received"
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: could not bind device to the command exchange: Exception (504) Reason: "channel/connection is not op
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: could not bind device to the command exchange: Exception (504) Reason: "channel/connection is not op

// infinite cycle, as program has not been notified that connection is closed
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Error creating AMQP queue: Exception (504) Reason: "channel/connection is not open"
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Error creating AMQP queue: Exception (504) Reason: "channel/connection is not open"
May 14 11:35:45 ip-10-0-6-12 wss-server[9857]: Error creating AMQP queue: Exception (504) Reason: "channel/connection is not open"

+1

+1

It was my bad - even though I used single channel per connection, I had to monitor channel state too, as there could be a case when channel gets closed while connection is still alive.


Easy way to create new titles

It would be nice to have an easy way to create titles. By this I mean a button or something where I can select a blank lower third (one line, two line, split, etc.), credit graphic, etc. While it's not the most difficult thing to go and add it, the names of all of the graphics are confusing without pictures and the need for on-the-spot graphics comes up frequently enough. Thanks.

There should be a "+" drop down in the titles UI that lets you add a new
title.

Yes, but there's no easy way of knowing what any of these are.

The functionality to add titles easily was added in 2c7e1ed.
Lack of title previews is addressed in #68 so I'm closing this as a duplicate.


[feature request] expose NoVel environments; pip installable?

Hi,
I wanted to mention a possible usecase of the code in sb3-z: You have the NoVel environments that others can use to verify their recurrent policy implementations. If I understand right, now I have to copy the whole library or some selected files into my project to experiment on these environments, and import utils.import_envs.
It would be ideal to pip install something to have those. And/Or have a callable register_novel_envs.
Thanks for considering!

Probably a duplicate of https://github.com/DLR-RM/rl-baselines3-zoo/issues/249, help is welcomed ;)
but yes, for now, you need to copy the folder/files.

by the way, the code references a repo with no license: https://github.com/DLR-RM/rl-baselines3-zoo/blob/38eb59d74c49eaf77d8994fd28d220a9f65a21ee/utils/wrappers.py#L348 - I've requested them to add a license https://github.com/LiuWenlin595/FinalProject/issues/1 but if they don't not sure it's compliant.


add new component about audio.   please~~~

add one new component about audio.   please~~~
---Modified README.md

@forijk I created a PR fixing a typo and improving the syntax highlighting  https://github.com/forijk/vue-audio-better/pull/2

@DannyFeliz Thank you~

git: pull request template structure not broken

@Scrum git: pull request template structure not broken

@forijk You have deleted the PR template, please read carefully https://github.com/vuejs/awesome-vue/blob/master/.github/pull_request_template.md

General

✏ Mark the necessary items without changing the structure of the PR template.

[x] Pull request template structure not broken

Type

ℹ  What types of changes does your code introduce?

👉 Put an x in the boxes that apply

[ ] Fix
[x] Feature

Checklist

ℹ  Check all checkboxes - this will indicate that you have done everything in accordance with the rules in CONTRIBUTING.

👉  Put an x in the boxes that apply.

[x] Title as described
[x] Make sure you put things in the right category!
[x] Always add your items to the end of a list

Open Source

[x] The documentation (README) contains a description of the project, illustration of the project with a demo or screenshots and a CONTRIBUTING section
[x] The documentation is in English.
[x] The project is active and maintained.
[x] The project accepts contributions.
[x] Not a commercial product

Apps/Websites

[x] The website is available without errors or ssl certificate problems, and load in a reasonable amount of time.
[x] The website is using vuejs intensively. It should detect vue with vue-devtools.

If you cannot detect vue with vue-devtools due to work at non public pages (e.g. for enterprise website), you can send Pull Request with screenshot that detected it.

[x] The website is original and not too simple. For that reason, blogs and simple landing pages are rejected.
[x] A commercial product using Vue, provided that guests could reasonably check out how Vue was used A commercial product using Vue, provided that guests could reasonably check out how Vue was used (i.e. A headless CMS which uses Vue for the Admin/editor Area and offers a free tier).

@Scrum
Sorry, I didn't know this before. I have submitted it according to the template~

@forijk You checked all the points. I don’t understand what category you assigned your package to.

@Scrum
Sorry, the template has been updated, is it ok?
Thank you!


srain: init at 1.3.0

Motivation for this change
Things done

Built on platform(s)

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

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

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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.

Known issues：GtkEmojiChooser is only available in GTK4，Srain 2.0 will move to GTK4，https://github.com/SrainApp/srain/issues/279

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

1 package built:

srain

GUI works. Please follow CONTRIBUTING.md and squash the commits.
In your case, the commits are:
maintainers: add rewine
srain: init at 1.3.0


Difference in ice candidates list between 7.8 and 8.1

Hello! I've updated sip.js from v7.8 to 8.1 and issues with sdp negotiation occurred. After some investigation, i've noticed that ice candidates list are different for 7.8 and 8.1, which, i think, is the case. Do you have any thoughts where can be the problem? Thank you!
======= 7.8 ======
v=0
o=-<PHONE_NUMBER>215982187 2 IN IP4 <IP_ADDRESS>
s=-
t=0 0
a=group:BUNDLE audio
a=msid-semantic: WMS suALGQLU5Af3Bc6bmkcADcai1NO6G0oJO3FU
m=audio 36393 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126
c=IN IP4 <IP_ADDRESS>
a=rtcp:9 IN IP4 <IP_ADDRESS>
a=candidate:211156821 1 udp<PHONE_NUMBER> <IP_ADDRESS> 36393 typ host generation 0 network-id 1 network-cost 10
a=candidate:2781507712 1 udp<PHONE_NUMBER> <IP_ADDRESS> 36393 typ srflx raddr <IP_ADDRESS> rport 36393 generation 0 network-id 1 network-cost 10
a=candidate:1108738981 1 tcp<PHONE_NUMBER> <IP_ADDRESS> 9 typ host tcptype active generation 0 network-id 1 network-cost 10
a=ice-ufrag:Ldjl
a=ice-pwd:c3R1z61H7UQf8eiE8+OY2e27
a=ice-options:trickle
a=fingerprint:sha-256 F4:20:2D:C1:E9:CE:84:28:0E:AD:F1:36:8E:9A:94:CD:31:04:E9:E8:5B:88:CD:A2:DF:F5:C8:A9:26:B0:F8:2F
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:112 telephone-event/32000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
a=ssrc:3878782299 cname:o2m3V9Ho/28/f5n5
a=ssrc:3878782299 msid:suALGQLU5Af3Bc6bmkcADcai1NO6G0oJO3FU 10c80dcf-7629-468c-97fe-6185f4b9a1f9
a=ssrc:3878782299 mslabel:suALGQLU5Af3Bc6bmkcADcai1NO6G0oJO3FU
a=ssrc:3878782299 label:10c80dcf-7629-468c-97fe-6185f4b9a1f9
====== 8.1 ========
v=0
o=-<PHONE_NUMBER>794148400 2 IN IP4 <IP_ADDRESS>
s=-
t=0 0
a=group:BUNDLE audio
a=msid-semantic: WMS gwXwFekzUMG8P7NXVlnoL3pfLiRR5doc5EAj
m=audio 41743 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126
c=IN IP4 <IP_ADDRESS>
a=rtcp:9 IN IP4 <IP_ADDRESS>
a=candidate:211156821 1 udp<PHONE_NUMBER> <IP_ADDRESS> 41743 typ host generation 0 network-id 1 network-cost 10
a=ice-ufrag:idPR
a=ice-pwd:4gB8KcZOKSWTbPKz+sFo75ZE
a=ice-options:trickle
a=fingerprint:sha-256 E0:9C:6B:61:02:4B:DC:19:2C:3D:13:79:F3:10:49:36:F7:34:96:98:5B:14:92:8C:2B:1B:27:27:A6:9E:85:D6
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:112 telephone-event/32000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
a=ssrc:849266702 cname:ZVogc2TLFZVUtArD
a=ssrc:849266702 msid:gwXwFekzUMG8P7NXVlnoL3pfLiRR5doc5EAj 1108a027-8b47-4987-b6cc-2bcbad55a9c1
a=ssrc:849266702 mslabel:gwXwFekzUMG8P7NXVlnoL3pfLiRR5doc5EAj

0.8.1 looks cut off. Can you provide some details such as which browser you are using, and some more complete SIP.js logging in a gist? Thanks

Here are full console outputs for 8.1 and 7.8
0.8.1: https://gist.github.com/Klimashin/8679619b621e0c9f26038b1d511ebb60
0.7.8: https://gist.github.com/Klimashin/a6668c2412a5f92f166394daa1d9c1c1
I'm using Google Chrome Version 60.0.3112.90 (Official Build) (64-bit)

I've seen the same change in behaviour from 0.7 to 0.8.
I am not sure if it is relevant but, in our scenario the SDP of the first invite contains only one IP address.
But when a Re-Invite is generated (like by putting the call on hold) the SDP contains two IP addresses.

So guys, any luck with this issue? No external candidates results in call failure.

Yeah. I tracked this down yesterday on our mailing list. I am putting together a new release to get it fixed, but setting the configuration option outlined should resolve the problem in the immediate term. Sorry for the trouble.

Thanks a lot!

commit 49c6ac45b673e9f8c490b8aa27041eb70ace8d48 which is included in 0.8.2 should fix this. I am closing this issue, but if it is still a problem please re-open.

Still doesn't work in MS Edge, no candidates

Can you provide full logs in a gist from SIP.js?

Sure, here it is https://gist.github.com/roman-yerin/26cc784da471d11be3468b76a29157a3

Sorry. Also need traceSip: true on the UA.

https://gist.github.com/roman-yerin/5f845bddeffb9e043d73b82b30326357

Your issue is with freeswitch Reason: Q.850;cause=88;text="INCOMPATIBLE_DESTINATION"

That's because of no candidate found, read my comment here https://gist.github.com/roman-yerin/26cc784da471d11be3468b76a29157a3
As you can see, all the candidates are at rfc1918 networks

Makes sense. The only thing that would affect this in SIP.js is the iceCheckingTimeout. The candidates are passed directly from the browser into the SDP (unless you have modifiers removing them).


:nif_library_not_loaded

When I try to create a new user, I'm getting :nif_library_not_loaded error all the time. I have no idea why I'm getting this. It doesn't have any tricky way. I'm just trying to create password hash. You can see example below.
Elixir v.: 1.5.1
Erlang v.: 20.0.4
Mac v.: El capitan
{:comeonin, "~> 4.0"},
{:argon2_elixir, "~> 1.2"}

defmodule Helloworld.UserController do
  .....

  def login(conn, %{"username" => username, "password" => password}) do
    case Accounts.get_user_by_email(username) do
      nil ->
        case Accounts.create_user(%{"email": username, "password": password}) do
          nil ->
            IO.puts('no')
          user ->
            IO.puts('yes')
        end
      user ->
        IO.puts(user)
    end
  end

  .....

end

defmodule Helloworld.Accounts.User do
  use Ecto.Schema
  import Ecto.Changeset

  alias Helloworld.Accounts.User

  @derive {
    Poison.Encoder,
    except: [:__meta__, :updated_at, :inserted_at]
  }

  schema "users" do
    field :email, :string
    field :password_hash, :string

    field :password, :string, virtual: true

    timestamps()
  end

  @doc false
  def changeset(%User{} = user, attrs) do
    user
    |> cast(attrs, [:email, :password])
    |> validate_required([:email, :password])
    |> validate_length(:email, min: 1, max: 255)
    |> validate_format(:email, ~r/@/)
    |> hash_password()
    |> unique_constraint(:email)
  end

  defp hash_password(%{valid?: false} = changeset), do: changeset
  defp hash_password(%{valid?: true} = changeset) do
    hashed_password =
      changeset
      |> get_field(:password)
      |> Comeonin.Argon2.hashpwsalt()

    changeset
    |> put_change(:password_hash, hashed_password)
  end
end

Could you show me the actual error please?

You could also try running (cd deps/argon2_elixir && make clean && make) and see if that helps.

Hi @riverrun, Sorry for replying late. I tried to run (cd deps/argon2_elixir && make clean && make) and it works! Thanks for your help. But why has it happened? What should I do for next projects?

Btw I realised It's happening when I try debugging on IntelliJ IDEA CE with IntelliJ Elixir plugin. When I just run, It doesn't get any problem.

Running make clean removes the old argon2 binary and forces a rebuild. This is not normally needed, but as you noticed, it is needed when you run your debugging tool. It is also sometimes needed after updating Erlang / Elixir to a new version.
I have considered changing the Makefile so that the argon2 binary is rebuilt every time you run mix compile or mix  test, and in fact the Windows version does do that, but that introduces extra overhead, and if you are running a lot of tests, it will slow them down.
I hope that answers your question.


Give the task number in the task added message

Currently when you add a task, it just says "Task added: [task]" so you need to use 2 to list tasks before you know the task ID for adding a due date or any other task that involves changing/deleting that task.

That's a good observation!


Add ability to change default font

I came across this package today and loved it, thanks! I wanted to change the default font so implemented it locally and thought I'd submit a PR for review.
Thanks again, made my little toy app look great!

Thank you so much. I been very happy about your thoughts and PR.


392 add cli commands for config

Issues: #

Definition of Done
The PR shall be merged only if all items mentioned in CONTRIBUTING.md have been followed. In case an item is not applicable as described, please provide a short explanation in the description.

[ ] All steps in CONTRIBUTING.md have been handled

The configs PR #389 will soon be merged. We should not forget to update the tutorial there: https://github.com/eclipse-ankaios/ankaios/pull/389/files#r1810521082

I've updated the tutorial, but I would really need some suggestions regarding ank delete configs.


Model in memory, decode passed sentence

Hi.
Is it possible or is it planned to build an interface to store model in memory and then decode sentence passed.
I want to load model and test it dynamically. Creating a text file, then launching train with loading everything each time is slow and inefficient.

We'll be happy to help if you need it. We're working on open-sourcing a python notebook soon, so that'd be one thing like that. Even now, you can do t2t_trainer --decode_interactive and then just pass sentences. Unluckily, this re-loads the model due to tf.learn limitations, but we're working on that too. Let us know precisely what you need, we'll be happy to help (and if you want if fast, feel free to send PRs of course).

In the new release, we made an example how to use Tensor2Tensor with raw tf.Session and placeholders. That allows to keep model in memory and feed it with batches of data for inference or evaluation as you please. Take a look at the following test for an end-to-end example how to do that:
https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/trainer_utils_test.py#L96

Thank you very much. I'll check how it works definitely. At first glance looks great. Keep up great work ;)

@efeiefei you could check the function TestModel(), that is a good example for using raw session, except for its using of default dataset from a pre-registered problem. My suggestion is you could also take a look at https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/bin/t2t_decoder.py , where you could find some useful information in score_file()


Accuracy of results seems odd.

For some reason I'm getting odd values, and I'm not sure if its me or the model. Take a look and let me know what you think...

I was expecting to get around 9.8+ score on the 1.jpg, the one with the tree and blue sky. Is from the NIMA paper.
Additionally what scores or results are you guys getting? Maybe is just something on my end...

I guess you are using the aesthetic model..it was trained on the AVA dataset which has the vast majority of mean scores in the range 4 to 7 (see Figure 1 in the NIMA paper). So the model will also only predict in that range. People we generally scored quite high in AVA I believe which also shows in your predictions.
We labelled a hotel dataset ourselves and had a wider range of mean scores which then also resulted in the fine-tuned classifier to predict more extreme scores.


Cannot access GITPITCH.md using Gitlab private repository

Hi,
I have self hosted Gitlab CE 11.8.0 and I have private repository which contains GITPITCH.md. I was testing this docker image https://hub.docker.com/r/knsit/gitpitch
I was unable to get my test slide to show up. I thought that I had issues with my personal API key, but I tested with curl and api/v4 request worked fine. When Gitpitch was requesting files from repository
grsLink=http://git.example.com/USER/REPOSITORY/raw/master/PITCHME.yaml?gp=0

request got redirected in to login page.

I started Googling and found possible issue https://gitlab.com/gitlab-org/gitlab-ce/issues/54572
What I understand from that, is that

That issue Affects GitLab CE/EE 8.8 and later.
It also should affect gitlab.com private repositories

I think Gitpitch should change the way it's accessing Gitlab files and use only api/v4
curl -sNH 'PRIVATE-TOKEN: <token>' 'http://git.example.com/api/v4/projects/PROJECT_ID/repository/files/PITCHME.md/raw?ref=master'

Br,
Markku

You are correct, the open source server is still using GitLab API v3. And the Docker image you are using - an image maintained by someone else - is automatically built against the open source repo.
The server on gitpitch.com has already been updated to use the GitLab v4 API. As has the official GitPitch Enterprise Docker image.
I have not yet back-ported this update to the open source server. When time permits I'll do that. Hopefully sometime over the coming weeks. Feel free to bump this thread if you don't see any updates.

Quick update. Having spent some time looking into this I realized that the version of the GitLab API does not really matter here. The open source server does not support private repos.
While an update to the GitLab v4 API may permit fetching a PITCHME.md from a private repo associated with the master token specified in the server config, it would not support fetching any other presentation assets, such as images etc.
For private repository support you need either (1) a Pro subscription on https://gitpitch.com or (2) a license for GitPitch Enterprise to deploy on-premises.
For public repositories, the open source server should work perfectly without requiring any changes.


Not seeing much in the docs - NVENC

How does one use an nvidia card with go-vod?  I have a P2000 working fine in jellyfin(using nvidia-docker) but want to use this so I can use that card in Nextcloud.
Thanks.

https://github.com/pulsejet/memories/wiki/HW-Transcoding

Please open issues at memories except for bugs in go-vod