Hunting (Aggression)

Invokes any interaction not just combat.

Happens outside the measurable cycle time. (Either before player packets or after all pending packets have been flushed - thus can be multithreaded
Shouldn't mutate any variables on the creatures
Content devs have incredible control over the conditions for it
It is used for a lot more than just combat which is why it's called "hunt" and used for hunter npcs reacting to traps around them. (Hunter traps are dummy npcs which hunter npcs can "hook onto")
Also used for scenery. e.g. death plataeu two trolls that begin a humorous conversation between themselves if a player get's near (only can occur ever 40 mins) https://media.z-kris.com/2022/03/javaw_14d-23h-10m-23s-298ms.mp4
Target they pick is random from a list of possible targets
There's probably a limit (like 20) but it is not known
Could be done with reservoir sampling.
Would recommend soft-reference based cache for temporary lists to reduce generating unnecessary garbage.
Areas like godwars and battlefield are eventually marked as inactive and stop processing aggression for the entire area
Aggression doesn't use "local npcs" from npcs info as some servers have suggested.

(10 min) Timeout
The game tracks targets in a FIFO queue of 21x21 squares around the player and counts down so long as you remain in it. If you step out, the older square is wiped and a new square is built around the new tile you're on and the timer resets to 10 mins.
Eventually turns most (not all i.e. dark beasts) creatures around you unaggressive (just towards you, they can still aggro others).
Scripts are very configurable.
Not tied to combat at all.
Use for waking up cerberus too.
RS has hundreds of hunt modes.
e.g. some are used for starting npc cutscenes when you walk near to them.
Switching
Gwd npcs sometimes switch targets mid-combat to opposing factions. Caused by a hunt timeout?
Neitiznot trolls fighting guards seem to switch every 3-10 ticks. Far more frequently than in GWD.
Other gwd examples:
zamorakian npcs that are in another god's corner are completely unaggressive but will be if in the center.
Tolerance
After 10 minutes npcs will no longer flee from you and will fight back (with flawed anims?)
https://media.z-kris.com/2022/05/idea64_05d-19h-27m-34s-047ms.png
Player zones
Tracked by two 10x10 boxes
After teleport the first box is around where you arrive
The first tile outside of the first box is the first tile of the second box.
Then it's a FIFO queue of 2 boxes, remove the oldest one each time you leave the bounds of the two boxes.
Can be parallel processed.
Same boxes as discussed in Timeout ?
Kris' builder
Stack a bunch of predicates
https://media.z-kris.com/2022/07/IMoDMB251d.png

Draft
import java.awt.Rectangle

interface HuntStrategy {
    fun tolerant(entity: Entity): Boolean
    fun findTarget(potentialTargets: Map<Int, HuntTime>)
}

interface Entity

// could also store ints but then have to loop previous rect to update them all each move
data class HuntTime(
    var tick: Int
)

class NPC(
    val x: Int,
    val y: Int,
    val potentialTargets: MutableMap<Int, HuntTime>, // Map vs queue?
    val huntStrategy: HuntStrategy
) : Entity

class Player(
    val index: Int,
    val x: Int,
    val y: Int,
    var huntArea: Rectangle,
    var previousArea: Rectangle,
    var huntTime: HuntTime
) : Entity

val npcs = mutableListOf<NPC>()
val players = mutableListOf<Player>()

// Something more efficient ofc
fun npcs(x: Int, y: Int) = npcs.filter { it.x == x && it.y == y }

var tick = 0
for (player in players) {
    if (!player.huntArea.contains(player.x, player.y)) {
        player.huntTime.tick = tick + 1000
        player.previousArea = player.huntArea
        player.huntArea = Rectangle(player.x - 5, player.y - 5, 10, 10)
        for (x in player.x - 5 until player.x + 5) {
            for (y in player.y - 5 until player.y + 5) {
                for (npc in npcs(x, y)) {
                    npc.potentialTargets[player.index] = player.huntTime
                }
            }
        }
    }
}

for (npc in npcs) {
    for (key in npc.potentialTargets.keys) {
        val timer = npc.potentialTargets.getValue(key)
        if (timer.tick >= tick) {
            val target = players[key]
            if (npc.huntStrategy.tolerant(target)) {
                npc.potentialTargets.remove(key)
            }
        }
    }
}

val npc = npcs.first()
val target = npc.huntStrategy.findTarget(npc.potentialTargets)

hunt-1
Original - Mirror
@GauCho88664610: @jagexash Heya! Would you be willing to share a list of all permitted values for huntmode?

@JagexAsh: I'm not sure what you're referring to as a "value" here. There are a few dozen custom ones defined, with different settings for what trigger they call when they find a target, what kind of NPC/LOC/OBJ they seek, and whether to consider changing target after finding one.

@GauCho88664610: I was hoping for a list of labels so that we could try to categorize npc behaviour on the wiki. I was looking for possible values you could write while defining an npc. For example, one such valid huntmode "value" would be "aggressive_melee".

@JagexAsh: Alright, here's the main ones: {image}

[ranged]
[constant_melee]
[constant_ranged]
[cowardly]
[notbusy_melee]
[notbusy_range]
[aggressive_melee]
[aggressive_melee_extra]
[aggressive_ranged]
[aggressive_ranged_extra]
[ap1_trigger_constant]
[ap1_trigger]
[ap2_trigger_constant]
[ap2_trigger]
[op1_trigger_constant]
[op1_trigger]
[op2_trigger_constant]
[op2_trigger]
[queue11_trigger_constant]
[queue11_trigger]
[bigmonster_melee]
[bigmonster_ranged]
hunt-2
Original
@ZenKris21: @JagexAsh Could you show an example of a .hunt config? Curious how you define all the parameters that make up a hunt mode.

@JagexAsh: The variables are trackers for when the player/NPC last got attacked.

[aggressive_melee]
type=player
check_vis=lineofsight
check_nottoostrong=off
check_notcombat=%lastcombat
check_notcombat_self=%npc_lastcombat
check_notbusy=off
find_keephunting=off
find_newmode=opplayer2

@ZenKris21: That's interesting! What kind of other types exist, besides the obvious player and npc, if any?

@JagexAsh: NPCs can target scenery - see Pest Control.
Also objects, as used by the sweeper in Varrock.

@ZenKris21: Ooh, that's kind of surprising actually - thought those would be handled in content with eg loc_findallzone. Are there any other visibility types besides line of walk and line of sight too?

@JagexAsh: 'off', i.e. no check for line of walk/sight at all.

@ZenKris21: Cool! :) Mod Kieren iirc mentioned using NPC dormancy to help reduce cycle times. Is this dormancy something you can configure in Runescript, or is that entirely baked into the engine? Do all creatures stop their hunt scripts if there's no one around?

@JagexAsh: Baked into the engine, I believe. For hunts of things that aren't players, one can specify one of these to customise it:
nobodynear=keephunting
nobodynear=pausehunt

@ZenKris21: Ooh, interesting. Is the distance for this configurable? If not, do you happen to know how far it checks?

@JagexAsh: It is not, and I don't remember ever hearing a number for that.

@ZenKris21: How do you handle making hunt scripts check for targets less frequently than every cycle? Most hunt scripts seem to check every single cycle, however some, such as the cleaner in Varrock, Penance fighters and box traps, seem to do it less frequently.

@JagexAsh: There's a rate setting available in .hunt files, though for hunting non-player targets, the engine won't accept low numbers of ticks (presumably to minimise load). I don't recall what the minimum is.

@ZenKris21: Cool! :)
Does the engine always provide a single random target, or do you get kind of a list/sequence of targets which you can then furthermore filter in Runescript?

@JagexAsh: Single random target. The documentation says that prefer=nearest could exist, but if you try it, the compiler says it was never implemented.

@ZenKris21: So if you need more than one target, or someone that's nearest, you'd do it in Runescript?
On a side question - how does GWD hunt work, since they seem to target NPCs and players alike. Is it two separate hunt scripts? Can NPCs even have multiple hunt scripts?

@JagexAsh: 1. Yes.
2. Having defined different .hunt configs, one can tell an NPC which one to use. And GWD creatures switch occasionally.

@ZenKris21: How about filtering out players who wear god items that belong to the specific faction? Is this a config property, or handled within Runescript?

@JagexAsh: There's a config property for checking quantities of items with a specified parameter.

@ZenKris21: Are you able to write specific scripts in Runescript that fire when the hunt provides a target?
Is this what queue11_trigger is for?

@JagexAsh: Rather than setting the NPC into a behaviour mode, the hunt can tell the NPC to execute a particular queue. Queues 1-20 can exist; while 1, 3 and 8 are conventionally used for retaliation, death and holdspells, 11 has no standard purpose so it could be used for anything.

@ZenKris21: Earlier in the hunt config you showed:
check_notbusy=off

What does this "busy" status consist of?

@JagexAsh: Having a menu open.
That's why it's usually set to off, since a dev will generally want their NPC to be able to aggro a player regardless of that. Though for a *really* newbie area we might choose differently.

hunt-3
Original
@Skretzo: @JagexAsh What makes most monsters in the Wilderness aggressive regardless of the player's combat level? Is it a property of the NPC, like a huntmode category? Or maybe location based? How come the level 2 man in The Forgotten Cemetery is not aggressive?

@JagexAsh: In the huntmodes, the check_nottoostrong property accepts off or outside_wilderness. That man may simply not have hunting enabled at all.

@Skretzo: Thank you! What kind of property lets certain slayer monsters like the dark beast always be aggressive, even after the 10 minutes when most other NPCs lose interest?

@JagexAsh: check_afk can be on or off.

Blurites hunt ranges
Hunt range 1 has 82 configs, npcs: Zombie, Skeleton, Ghost, Rocks, Wolf, Hole in the wall, Wall beast, Pirate, Rock, Stick, Pee Hat, Kraka, Mountain troll, Guard Bandit, Bloodworm, Crypt rat, Giant crypt rat, Crypt spider, Giant crypt spider, Giant bat, Grizzly bear, Magic axe, Fly trap, Giant rat, Shadow spider, Deadly red spider, Ice spider, Poison spider, Scorpion, Hobgoblin, Sergeant, Troll general, Sandy rocks, Mammoth, Ankou
Hunt range 2 has 34 configs, npcs: Hellhound, White wolf, Chaos dwarf, Lesser demon, Ice giant, Moss giant, Hill Giant, Flesh Crawler, Black unicorn, King Scorpion, Scorpia's offspring, Sandy Boulder
Hunt range 3 has 61 configs, npcs: Black dragon, Green dragon, Dark wizard, Chaos druid, Thug, Dark warrior, Battle mage, Greater demon, Black demon, Fire giant, Earth warrior, Chronozon, Guard, Flax keeper, Lava dragon, Elder Chaos druid, Cave lizard, Revenant imp, Revenant goblin, Revenant pyrefiend, Revenant hobgoblin, Revenant cyclops, Revenant hellhound, Revenant demon, Revenant ork, Revenant dark beast, Revenant knight, Revenant dragon
Hunt range 4 has 24 configs, npcs: Ice warrior, Cleaner, Ice troll runt, Ent, Soldier, Lizardman, Lizardman brute, Ranger, Doyen, Necromancer
Hunt range 5 has 131 configs, npcs: Swarm, Ice wolf, Bandit, Kalphite Soldier, Kalphite Guardian, Kalphite Worker, Kalphite Larva, Ice troll runt, Ice troll male, Ice troll grunt, Honour guard, Ducklings, Dark wizard, Ogre, Cyclops, Saradomin priest, Spiritual warrior, Spiritual ranger, Spiritual mage, Knight of Saradomin, Jogre, Ork, Hobgoblin, Goblin, Hellhound, Imp, Werewolf, Feral Vampyre, Bloodveld, Pyrefiend, Icefiend, Gorak, Aviansie, Jail guard, Khazard trooper, Gnome troop, Gnome, Mounted terrorbird gnome, Tortoise, Spawn, Dark Ankou, Zamorak warrior, Zamorak ranger, Zamorak mage, Zombie
Hunt range 6 has 7 configs, npcs: Black Knight, Bandit, Ice warrior, Scorpia, Crazy archaeologist, Chaos Fanatic
Hunt range 7 has 2 configs, npcs: Lizardman shaman
Hunt range 8 has 14 configs, npcs: Ash, Thrower Troll, Dark beast, Thrower troll, Cerberus
Hunt range 10 has 7 configs, npcs: Ice troll female, Chaos Elemental, Gnome Mage, Ancient Wyvern, Shaeded Beast
Hunt range 16 has 2 configs, npcs: Kalphite Queen
Hunt range 20 has 2 configs, npcs: Obor, Hespori
Hunt range 25 has 30 configs, npcs: Commander Zilyana, Starlight, Growler, Bree, General Graardor, Sergeant Strongstack, Sergeant Steelwill, Sergeant Grimspike, K'ril Tsutsaroth, Tstanon Karlak, Zakl'n Gritch, Balfrug Kreeyath, Kree'arra, Wingman Skree, Flockleader Geerin, Flight Kilisa, Growthling, Bryophyta, Alchemical Hydra
Hunt range 30 has 1 configs, npcs: Scorpia's guardian
Hunt range 50 has 6 configs, npcs: King Black Dragon, Cerberus, Sarachnis, Spawn of Sarachnis
Hunt range 64 has 1 configs, npcs: Skotizo

More hunt modes will be added over time for Monster v Monster and other scenarios.
Will need to add hunt mode switching when gwd targets die, and perhaps after a timeout too?
As more aggressive npcs are added performance may become an issue.
Possible performance improvements:

Reusing target lists
Reservoir sampling instead of collecting all targets into lists
Multithreading


Allow issues to be filtered by release name instead of release number

Resolved by using Issue Sources instead of the legacy provider.


Cannot deny a password change request

We got a password change request for someone who does not have an account.
But the system will not let me deny the request.
Imported from trac ticket #91,  created by ahelsing on 02-27-2014 at 09:38, last modified: 06-18-2014 at 14:54

The user does have an account. It is not possible to create a password change request without matching a valid account.
The fact remains, however, that a password change request can only be approved, not denied. It's easy to imagine cases where denying a password change request might be useful, so this feature is still desirable.
Trac comment by tmitchel (github user: tcmitchell) on 02-27-2014 at 16:32


Change Jenkins Docker Runner to CentOS7 so k-NN lib will not crash on OS with lower glibc version

Description
Change Jenkins Docker Runner to CentOS7 so k-NN lib will not crash on OS with lower glibc version
Issues Resolved
#481
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Why update the bundle workflow job image? There were no build errors during this job.

If I understand correctly the k-nn native code compiles but doesn't run?

knnlib will compile on AL2 but it will crash during runtime on CentOS7.


The results of the python program and the C++ program in the FBP algorithm are inconsistent

python reconstructed images are smooth and C++ reconstructed images have a lot of ring artifacts. Is that the step in python that calls mean processing

When I remember seeing your Python script, you did not provide the air scan image.  If you use the same air scan image in both, they will look similar.
Yes, the flux correction can be helpful, but it does not affect those ring artifacts.

https://drive.google.com/file/d/1McaHp96NDRYJvrKwkP-lw-Q42X0zH8GY/view?usp=sharingI
provided the same projection and air, is there a difference in the dual flight on your computer? I am the person you solved the C++ interface for me before, and the data connection is the same URL as before

Yes, I definitely remember you and this issue.  Unfortunately, I don't think I can help much more.  We've identified that there are some small differences in the Python and C++ methods, and these must be rectified before they both produce the same result.
I'm here to answer any questions you have about LEAP and am willing to help with a little troubleshooting, but I must establish some boundaries, or I'll have no life.

Thank you very much for your guidance! On this issue has been very embarrassed! Then I'll close the question

@kylechampley Thanks for your advice and inspiration. I found the problem and solved it. My reason is that there is a difference between the normalization part of C++ and python, which leads to ring artifacts
First of all, I saved the result of this function in the python function and ran it in the C++ program, which solved the problem perfectly

I use the OPENCV library implements makeAttenuationRadiographs c + + version
Here is my c++ code that I am happy to share
#include <stdio.h>   // For file operations and printf
#include <stdlib.h>  // For malloc and free
#include   // For std::cout (if needed)
#include <opencv2/core.hpp>
#include <opencv2/imgproc.hpp>
#include "opencv2/core/cuda.hpp"
#include "opencv2/imgproc.hpp"
using namespace cv;
using namespace std;
int main()
{
float* proj = NULL; // Object projection data
float* proj_empty = NULL; // Air projection data
int ns = 1328;
int nt = 1024;
int na = 800;
const char* fname_out = "Half-fanFDK-leap-.raw"; // Reconstructed image file
FILE* fid = NULL;
int wh = ns * nt;
//--------------------read air and object projection----------------------
//+++++++++++air projection+++++++++++
proj_empty = (float*)malloc(sizeof(float) * ns * nt); // Air projection data
printf("Start to read air projection!\n");
const char* proj_file_2 = { "air90.raw" }; // Full-Fan
fid = fopen(proj_file_2, "rb");
if (fid == NULL) {
    printf("\nERROR: Could not open pre-weight file %s\n", proj_file_2);
}
fread(proj_empty, sizeof(float), ns * nt, fid);
fclose(fid);
printf("Reading air projection is done!\n");

//++++++++++++object projection+++++++++++++
proj = (float*)malloc(sizeof(float) * ns * nt * na); // Object projection data
printf("Start to read object projection!\n");
const char* proj_file_1 = { "proj-42-841.raw" }; // Full-Fan
fid = fopen(proj_file_1, "rb");
if (fid == NULL) {
    printf("\nERROR: Could not open pre-weight file %s\n", proj_file_1);
}
fread(proj, sizeof(float), ns * nt * na, fid);
fclose(fid);
printf("Reading object projection is done!\n");

// Define ROI
int ROI[4] = {30, 80, 950, 1000};
// Store mean results
vector<float> postageStamp(800);
Mat projALL(na, wh, CV_32FC1);

#pragma omp parallel for
for (int i = 0; i < na; i++)  // Loop over angles
{
    cout << i << endl;
    // Copy one page
    Mat proj_i = Mat(nt, ns, CV_32FC1, proj + i * wh);

    // Convert proj_empty to Mat type
    Mat air(nt, ns, CV_32FC1, proj_empty);

    Mat result;
    divide(proj_i, air, result); // Divide the current page by the air projection

    // Define ROI region
    Rect roi(ROI[2], ROI[0], ROI[3] - ROI[2] + 1, ROI[1] - ROI[0] + 1);

    // Calculate mean of the ROI
    Scalar meanValue = mean(result(roi));
    postageStamp[i] = meanValue[0]; // Take the first element of the mean

    result = result.reshape(1, 1).clone(); // Clone to ensure safety

    result.copyTo(projALL.row(i));
}

#pragma omp parallel for
// Process the first 800 rows for normalization
for (int i = 0; i < 800; i++) {
    // Get the mean value of the current row
    float meanValue = postageStamp[i]; // Directly retrieve mean
    // Normalize the current row
    projALL.row(i) /= meanValue;  // Divide by mean
    log(projALL.row(i), projALL.row(i)); // Add a small constant to avoid log(0)
    projALL.row(i) *= -1.0; // Multiply by -1
}

// Convert Mat to 1D float array
int totalSize = projALL.total(); // Get the total number of elements
float* projArray = new float[totalSize]; // Dynamically allocate memory

// Copy data to 1D array
memcpy(projArray, projALL.data, sizeof(float) * totalSize);

FILE* file3 = fopen("projlogC++.raw", "wb");
fwrite(projArray, sizeof(float), ns * nt * na, file3);
fclose(file3);

system("pause");
return 0;

}

I use the OPENCV library implements makeAttenuationRadiographs c + + version我使用 OPENCV 库实现 makeAttenuationRadiographs c + + 版本 Here is my c++ code that I am happy to share这是我很高兴分享的 c++ 代码 #include <stdio.h> // For file operations and printf#include <stdio.h> // 用于文件操作和 printf #include <stdlib.h> // For malloc and free#include <stdlib.h> // 对于 malloc 和 free #include // For std::cout (if needed)#include // 对于 std：：cout （如果需要）
#include <opencv2/core.hpp> #include <opencv2/imgproc.hpp> #include "opencv2/core/cuda.hpp"#include “opencv2/core/cuda.hpp” #include "opencv2/imgproc.hpp"#include “opencv2/imgproc.hpp” using namespace cv; 使用 namespace cv; using namespace std; 使用 namespace std;
int main() int main（） { float* proj = NULL; // Object projection data浮点数* proj = NULL;对象投影数据 float* proj_empty = NULL; // Air projection data浮点数* proj_empty = NULL;空气投影数据 int ns = 1328; int nt = 1024; 国际 nt = 1024; int na = 800; 国际 na = 800; const char* fname_out = "Half-fanFDK-leap-.raw"; // Reconstructed image fileconst char* fname_out = “Half-fanFDK-leap-.raw”;重建的图像文件 FILE* fid = NULL; 文件* fid = NULL; int wh = ns * nt;
//--------------------read air and object projection----------------------
//+++++++++++air projection+++++++++++
proj_empty = (float*)malloc(sizeof(float) * ns * nt); // Air projection data
printf("Start to read air projection!\n");
const char* proj_file_2 = { "air90.raw" }; // Full-Fan
fid = fopen(proj_file_2, "rb");
if (fid == NULL) {
    printf("\nERROR: Could not open pre-weight file %s\n", proj_file_2);
}
fread(proj_empty, sizeof(float), ns * nt, fid);
fclose(fid);
printf("Reading air projection is done!\n");

//++++++++++++object projection+++++++++++++
proj = (float*)malloc(sizeof(float) * ns * nt * na); // Object projection data
printf("Start to read object projection!\n");
const char* proj_file_1 = { "proj-42-841.raw" }; // Full-Fan
fid = fopen(proj_file_1, "rb");
if (fid == NULL) {
    printf("\nERROR: Could not open pre-weight file %s\n", proj_file_1);
}
fread(proj, sizeof(float), ns * nt * na, fid);
fclose(fid);
printf("Reading object projection is done!\n");

// Define ROI
int ROI[4] = {30, 80, 950, 1000};
// Store mean results
vector<float> postageStamp(800);
Mat projALL(na, wh, CV_32FC1);

#pragma omp parallel for
for (int i = 0; i < na; i++)  // Loop over angles
{
    cout << i << endl;
    // Copy one page
    Mat proj_i = Mat(nt, ns, CV_32FC1, proj + i * wh);

    // Convert proj_empty to Mat type
    Mat air(nt, ns, CV_32FC1, proj_empty);

    Mat result;
    divide(proj_i, air, result); // Divide the current page by the air projection

    // Define ROI region
    Rect roi(ROI[2], ROI[0], ROI[3] - ROI[2] + 1, ROI[1] - ROI[0] + 1);

    // Calculate mean of the ROI
    Scalar meanValue = mean(result(roi));
    postageStamp[i] = meanValue[0]; // Take the first element of the mean

    result = result.reshape(1, 1).clone(); // Clone to ensure safety

    result.copyTo(projALL.row(i));
}

#pragma omp parallel for
// Process the first 800 rows for normalization
for (int i = 0; i < 800; i++) {
    // Get the mean value of the current row
    float meanValue = postageStamp[i]; // Directly retrieve mean
    // Normalize the current row
    projALL.row(i) /= meanValue;  // Divide by mean
    log(projALL.row(i), projALL.row(i)); // Add a small constant to avoid log(0)
    projALL.row(i) *= -1.0; // Multiply by -1
}

// Convert Mat to 1D float array
int totalSize = projALL.total(); // Get the total number of elements
float* projArray = new float[totalSize]; // Dynamically allocate memory

// Copy data to 1D array
memcpy(projArray, projALL.data, sizeof(float) * totalSize);

FILE* file3 = fopen("projlogC++.raw", "wb");
fwrite(projArray, sizeof(float), ns * nt * na, file3);
fclose(file3);

system("pause");
return 0;

}

//pProj: proj data
//pAir: air data
//result: data
for (size_t i = 0; i < na; i++)
{
  for (size_t j = 0; j < nt*ns; j++)
  {
    result[i * nt * ns + j] = = log(pProj[i * nt * ns + j] / pAir[j] + 1);
  }
}

Thank you very much for your guidance! On this issue has been very embarrassed! Then I'll close the question

Don't feel embarrassed. Beginners will always run into problems with simple basics.


Always set an owner ref back to our deployment

This change updates our clients to always set an owner ref when:

The operation is a create
The object does not already have an owner ref set

Signed-off-by: Monis Khan<EMAIL_ADDRESS>Release note:
All resources created by Pinniped now contain an owner reference back to the deployment that resulted in their creation.

I will follow up in a new PR on this tomorrow and add the unit test for the round tripper.  Deferring changes to the middleware interface for now until we have more concrete use cases.

I will follow up in a new PR on this tomorrow and add the unit test for the round tripper.  Deferring changes to the middleware interface for now until we have more concrete use cases.


Feature/devon4j

first (working) draft of devon4j-mts template for production line

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


Fix TIMESYS keyword

Hi @cdeil @cboisson @jknodlseder
While exporting IACT data, we found an inconsistency with our TIMESYS keyword description and other documents.
You can see that, for example here, that the TIMESYS refers to the time system (or time scale) allowing the following values:
  UTC  Coordinated Universal Time; defined since 1972.
  UT   Universal Time, equal to Greenwich Mean Time (GMT) since 1925;
        the UTC equivalent before 1972;
        see: Explanatory Supplement, p. 76.
  TAI  International Atomic Time; "UTC without the leap seconds";
        31 s ahead of UTC on 1997-07-01.
  IAT  International Atomic Time; deprecated synonym of TAI.
  ET   Ephemeris Time, the predecessor of TT; valid until 1984.
  TT   Terrestrial Time, the IAU standard time scale since 1984;
        continuous with ET and synchronous with (but 32.184 s ahead of)
        TAI.
  TDT  Terrestrial Dynamical Time; =TT.
  TDB  Barycentric Dynamical Time.
  TCG  Geocentric Coordinate Time; runs ahead of TT since 1977-01-01
        at a rate of approximately 22 ms/year.
  TCB  Barycentric Coordinate Time; runs ahead of TDB since 1977-01-01
        at a rate of approximately 0.5 s/year.

@jknodlseder Would this change be ok with ctools? Are you using TIMESYS anywhere?

@TarekHC - Thanks for fixing this!
Obviously, if there's some mistake or if the spec can be improved further, anyone is welcome to file issues / PRs in the future -- time is tricky.

Hi Tarek,
Yes, TIMESYS is used in GammaLib and ctools. The software supports "TT", "TAI" and "UTC".

Le 19 oct. 2017 à 11:16, Tarek Hassan<EMAIL_ADDRESS>a écrit :
Hi @cdeil https://github.com/cdeil @cboisson https://github.com/cboisson @jknodlseder https://github.com/jknodlseder
While exporting IACT data, we found an inconsistency with our TIMESYS keyword description and other documents.
You can see that, for example here http://www.cv.nrao.edu/fits/documents/standards/year2000.txt, that the TIMESYS refers to the time system (or time scale) allowing the following values:
UTC  Coordinated Universal Time; defined since 1972.
UT   Universal Time, equal to Greenwich Mean Time (GMT) since 1925;
the UTC equivalent before 1972;
see: Explanatory Supplement, p. 76.
TAI  International Atomic Time; "UTC without the leap seconds";
31 s ahead of UTC on 1997-07-01.
IAT  International Atomic Time; deprecated synonym of TAI.
ET   Ephemeris Time, the predecessor of TT; valid until 1984.
TT   Terrestrial Time, the IAU standard time scale since 1984;
continuous with ET and synchronous with (but 32.184 s ahead of)
TAI.
TDT  Terrestrial Dynamical Time; =TT.
TDB  Barycentric Dynamical Time.
TCG  Geocentric Coordinate Time; runs ahead of TT since 1977-01-01
at a rate of approximately 22 ms/year.
TCB  Barycentric Coordinate Time; runs ahead of TDB since 1977-01-01
at a rate of approximately 0.5 s/year.
@jknodlseder https://github.com/jknodlseder Would this change be ok with ctools? Are you using TIMESYS anywhere?
You can view, comment on, or merge this pull request online at:
https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94 https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94
Commit Summary
Fix TIMESYS keyword
File Changes
M source/events/events.rst https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94/files#diff-0 (2)
M source/events/gti.rst https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94/files#diff-1 (2)
Patch Links:
https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94.patch https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94.patch
https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94.diff https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94.diff
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/open-gamma-ray-astro/gamma-astro-data-formats/pull/94, or mute the thread https://github.com/notifications/unsubscribe-auth/AC2oV3A4KEVg6CconduGoFRXU8EXYTR1ks5stxN8gaJpZM4P-7e5.

Hi Jurgen,
Excellent. This means both that the 'MJD', 'JD' and 'TJD' examples were not correct, and that the current version is consistent with both ctools and gammapy.
Thank you for confirming it!


Is it possible to autogenerate .pfx file for java spring?

I'm trying to run Spring app on docker. It works well except I don't know how to generate automatically pfx/pk12 for Spring when letsencrypt-nginx-proxy-companion autorenew/generate certs.
I run out of ideas

Hi, that's currently not implemented and out of the container's scope.

This is somewhat tangent to #385 and #333

+1 for this feature and the linked issues (custom postprocess script after cert creation and renewal). I specifically need to generate a .pfx file for use in Plex.


Source for DLLs

Pypi Auto scanner is complaining on these files https://github.com/h4sh5/pypi-auto-scanner/issues/266013 , Is the source available for these ?

@jayakumark - just confirming that this issue is resolved?   Please pull the latest version of the .DLLs - and please raise a new issue if you are still having any problems.


slow typeclass synthesis: takes 19000 heartbeats to fail on AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ

live.lean-lang.org
import Mathlib

open Complex Filter Bornology

/--
error: failed to synthesize
  AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ
(deterministic) timeout at 'typeclass', maximum number of heartbeats (19000) has been reached (use 'set_option synthInstance.maxHeartbeats <num>' to set the limit)
-/
#guard_msgs in
set_option synthInstance.maxHeartbeats 19000 in
#synth AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ

-- This then results in a near failure (or failure on nightly-testing) of the simpNF linter on
-- `Complex.comap_exp_cobounded` and `Complex.map_exp_comap_re_atTop`:

/--
error: failed to synthesize
  AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ
(deterministic) timeout at 'typeclass', maximum number of heartbeats (19000) has been reached (use 'set_option synthInstance.maxHeartbeats <num>' to set the limit)
-/
#guard_msgs in
set_option synthInstance.maxHeartbeats 19000 in
example : comap exp (cobounded ℂ) = comap re atTop := by simp

Output of
set_option trace.Meta.synthInstance true in
#synth AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ

Also fixed by leanprover/lean4#4085

I confirm that this is fixed:
import Mathlib

/-!
# Test against slow typeclass synthesis

This file tests against regression in typeclass synthesis speed.

See https://github.com/leanprover-community/mathlib4/issues/12226
for the initial issue, that was fixed by
https://github.com/leanprover/lean4/pull/4085
-/

open Complex Filter Bornology

/--
error: failed to synthesize
  AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ
-/
#guard_msgs in
set_option synthInstance.maxHeartbeats 3000 in
#synth AddMonoidHomClass (AddGroupSeminorm ℂ) ℂ ℝ

-- This then results in a near failure (or failure on nightly-testing) of the simpNF linter on
-- `Complex.comap_exp_cobounded` and `Complex.map_exp_comap_re_atTop`:

set_option synthInstance.maxHeartbeats 3000 in
example : comap exp (cobounded ℂ) = comap re atTop := by simp


Project edit pre-work setup

Overview
This PR contains the following changes

Add structure for getting project data for edit, and putting project data for update
Moved a few view/create specific classes/queries to their own files

This PR contains the following types of changes

[ ] New feature (change which adds functionality)
[ ] Enhancement (improvements to existing functionality)
[ ] Bug fix (change which fixes an issue)
[ ] Misc cleanup / Refactoring / Documentation
[ ] Version change

Checklist
A list of items that are good to consider when making any changes.
Note: this list is not exhaustive, and not all items are always applicable.
General

[ ] I have performed a self-review of my own code

Code

[ ] New files/classes/functions have appropriately descriptive names and comment blocks to describe their use/behaviour
[ ] I have avoided duplicating code when possible, moving re-usable pieces into functions
[ ] I have avoided hard-coding values where possible and moved any re-usable constants to a constants file
[ ] My code is as flat as possible (avoids deeply nested if/else blocks, promise chains, etc)
[ ] My code changes account for null/undefined values and handle errors appropriately
[ ] My code uses types/interfaces to help describe values/parameters/etc, help ensure type safety, and improve readability

Style

[ ] My code follows the established style conventions
[ ] My code uses native material-ui components/icons/conventions when possible

Documentation

[ ] I have commented my code sufficiently, such that an unfamiliar developer could understand my code
[ ] I have added/updated README's and related documentation, as needed

Tests

[ ] I have added/updated unit tests for any code I've added/updated
[ ] I have added/updated the Postman requests/tests to account for any API endpoints I've added/updated

Linting/Formatting

[ ] I have run the linter and fixed any issues, as needed
See the lint commands in package.json
[ ] I have run the formatter and fixed any issues, as needed
See the format commands in package.json

SonarCloud

[ ] I have addressed all SonarCloud Bugs, Vulnerabilities, Security Hotspots, and Code Smells

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Screenshots
Please add any relevant UI screenshots, if applicable.

@shreyas, I think we might need to tackle the tests in another PR, so that we can start using this common code base

@shreyas, I think we might need to tackle the tests in another PR, so that we can start using this common code base
BUT ... we should have a place to capture the list of tests to be done sooner than later

hmmm... yeah I'm ok leaving it to another PR but 2.28% is quite a lot and definitely needs to be addressed
happy to help address it too - but we need to as a team

@shreyas, I think we might need to tackle the tests in another PR, so that we can start using this common code base
BUT ... we should have a place to capture the list of tests to be done sooner than later

hmmm... yeah I'm ok leaving it to another PR but 2.28% is quite a lot and definitely needs to be addressed
happy to help address it too - but we need to as a team

Yeah, we can help address it better once we have it in dev

It looks good in general .. the codecov went down, but I think it's worth putting the PR through and we can collectively address the test coverage
@NickPhura, what approach should go with?

I'd rather get this merged now, and include the necessary tests in each of the individual edit ticket PRs.  This is working when I test it with postman, but it hasn't been hooked up the the frontend, so it might be that I've overlooked something.  I'd rather we write tests for each edit workflow, after getting its full end-to-end working.

@shreyas, I think we might need to tackle the tests in another PR, so that we can start using this common code base
BUT ... we should have a place to capture the list of tests to be done sooner than later

hmmm... yeah I'm ok leaving it to another PR but 2.28% is quite a lot and definitely needs to be addressed
happy to help address it too - but we need to as a team

Yeah, we can/should add tests as we flush out each of the edit pieces.  But right now, with this being an incomplete piece of the round-trip workflow, I'd prefer to hold off in case something critical needs to change.


Run Heapster in standalone mode

This sets up Heapster to run in standalone mode (without Hawkular), in
order to run the Kubernetes HPA e2e tests.

Once we're running Heapster when we run CI jobs, we should be able to remove the line in Origin which disables the Kube HPA e2e tests, so that we don't break HPA policy again.

It's been pointed out that we would be adding a significant runtime increase with this. In the inventory right now are arguments we add to every test we ever run with Ansible. You probably only want it added to Origin e2e, so please make PRs that mirror:
https://github.com/openshift/aos-cd-jobs/pull/757
https://github.com/openshift/release/pull/275


Added support for dup3() function

Added support for dup3() function.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

@koutheir your build failed because it created a duplicate definition for Linux, and an unresolved symbol on OSX.  It looks like OSX doesn't support dup3 yet.  Instead of adding the definition to src/unix/mod.rs, you'll have to add it to various subdirectories, as appropriate.  Don't forget to check the man pages for OSes like OpenBSD and NetBSD that aren't actually run in CI.

So did you decide that you don't need dup3 after all?

No, I made another pull request to perform the operation correctly.


Stronger defense for Back compat

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15203/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15203/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15203/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15203/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15203/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15203/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15203/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15203/merge#BCU1XR#0

WebGL2 visualization test reporter:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15203/merge/testResults/webgl2playwright/index.html

Visualization tests for WebGPU (Experimental)
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15203/merge/testResults/webgpuplaywright/index.html


Rename .devcontainer.json to .devcontainer.json1i&

Why:

Closes [issue link]
What's being changed:

Check off the following:

[ ] I have reviewed my changes in staging. (look for the deploy-to-heroku link in your pull request, then click View deployment)
[ ] For content changes, I have reviewed the localization checklist
[ ] For content changes, I have reviewed the Content style guide for GitHub Docs.

This PR is blank and appears to have been opened in error. I'm going to close it now, but feel free to open a new issue or ask any questions in discussions!


can not run mnistcnn.py, servers waiting for eachother

Hello everyone, I tried to run this script on three AWS machines. One parameter server and two workers.
However, the ps is always in "Initializing session..." and workers always waiting for the ps.
I believe the challenge is from here:
ps definitions:
flags.DEFINE_integer("worker_index", 0,
"Worker task index, should be >= 0. worker_index=0 is "
"the master worker task the performs the variable "
"initialization ")
flags.DEFINE_string("workers", "<IP_ADDRESS>:2222,<IP_ADDRESS>:2222",
"The worker url list, separated by comma (e.g. tf-worker1:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("parameter_servers", "http://<IP_ADDRESS>:2222",
"The ps url list, separated by comma (e.g. tf-ps2:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("worker_grpc_url", "grpc://<IP_ADDRESS>:2222",
"Worker GRPC URL (e.g., grpc://<IP_ADDRESS>:2222, or "
"grpc://tf-worker0:2222)")
worker definitions:
flags.DEFINE_integer("worker_index", 1,
"Worker task index, should be >= 0. worker_index=0 is "
"the master worker task the performs the variable "
"initialization ")
flags.DEFINE_string("workers", "<IP_ADDRESS>:2222,<IP_ADDRESS>:2222",
"The worker url list, separated by comma (e.g. tf-worker1:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("parameter_servers", "http://<IP_ADDRESS>:2222",
"The ps url list, separated by comma (e.g. tf-ps2:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("worker_grpc_url", "grpc://<IP_ADDRESS>:2222",
"Worker GRPC URL (e.g., grpc://<IP_ADDRESS>:2222, or "
"grpc://tf-worker0:2222)")
second worker
flags.DEFINE_integer("worker_index", 2,
"Worker task index, should be >= 0. worker_index=0 is "
"the master worker task the performs the variable "
"initialization ")
flags.DEFINE_string("workers", "<IP_ADDRESS>:2222,<IP_ADDRESS>:2222",
"The worker url list, separated by comma (e.g. tf-worker1:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("parameter_servers", "http://<IP_ADDRESS>:2222",
"The ps url list, separated by comma (e.g. tf-ps2:2222,<IP_ADDRESS>:2222)")
flags.DEFINE_string("worker_grpc_url", "grpc://83.142.82:2222",
"Worker GRPC URL (e.g., grpc://<IP_ADDRESS>:2222, or "
"grpc://tf-worker0:2222)")
mnistcnn.txt
We appreciate any assistance .

This question is better asked on  StackOverflow since it is not a  bug or feature request. There is also a larger community that reads questions there. Thanks!


Language documentation missing and example 2 doesn't work

Example 2 doesn't seem to work anymore?
One of the parameters specified is deprecated and two overlapping.
Trying with the "-Language "Catalan" gives me New-CMSoftwareUpdateAutoDeploymentRule : No object corresponds to the specified parameters. Works with "English"
-Language, -LanguageSelection and -O365LanguageSelection should have better documentation.
What do we specify as input? English seems to work, can't get anything else to work - including the "Catalan" example.
Do we specify other languages as "Danish (Denmark)", "Danish" or "Dansk (Danmark)" as my GUI shows the language?
Can't seem to find any documentation on this :-(
Testing on 2002

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: a909f32d-5808-1dfc-f835-95fb8b260c54
Version Independent ID: 9b1587a0-72ba-a5c6-3404-ac26b0797ed9
Content: New-CMSoftwareUpdateAutoDeploymentRule (ConfigurationManager)
Content Source: sccm-ps/ConfigurationManager/New-CMSoftwareUpdateAutoDeploymentRule.md
Product: configuration-manager
Technology: configmgr-other
GitHub Login: @aczechowski
Microsoft Alias: aaroncz

Thanks @heinejeppesen for the feedback! I did some investigation with this today. I'll share some details below so that you can start using it. I'll make revisions to the doc (as well as the Set- and Get-), and hope to sneak it in with the 2006 content release soon. This issue will auto-close when the change merges.
I tested all of this with version 2006, but I don't think there was any changes to these cmdlets between 2002 and 2006.
In short, all three parameters (-Language, -LanguageSelection, and -O365LanguageSelection) appear to accept the same strings. They currently use the format you see in the UI for language criteria or Windows Update language selection. For now, I'd say ignore the additional languages and more detailed strings you see in the UI for O365 lang selection. Neither New- or Set- would accept those extended languages, only the core set you see with the other language settings.
Here's an example, which I successfully tested:
New-CMSoftwareUpdateAutoDeploymentRule -Name "pwsh test ADR" -CollectionId "XYZ0003F" -Language "English","Hungarian","Chinese (Simplified, PRC)" -Enable $false -EnabledAfterCreate $false -RunType DoNotRunThisRuleAutomatically -LanguageSelection "English","Hungarian","Chinese (Simplified, PRC)" -O365LanguageSelection "English","Hungarian","Chinese (Simplified, PRC)"

Note the format for the string arrays if you need to specify more than one language.
So in your case, you would just specify "Danish", for example:
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -O365LanguageSelection "Danish"
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -LanguageSelection "Danish"
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -Language "Danish"

Note: those commands overwrite, they are not additive. 😄

Hi Aaron,
Thanks for getting back to me.
I think I figured out, why the examples didn’t work for me.
I run the console from a Citrix session, due to heavy access restrictions (firewalled off, different network, different domain, PAM etc).
The Citrix servers are apparently configured with Danish as default for the user interface, which would never have happened on any workstation I would normally use.
I accidentally found out, after I started a Explorer.exe \servername\share<file://servername/share> from the PowerShell session spawned from within the console.
Everything in Explorer is in Danish, so a bit of facepalm was needed.
Unfortunately this affects the input needed for the arguments, which I didn’t really think of before.
This works for me: -LanguageSelection @('English','Dansk') -O365LanguageSelection @('English','Dansk','Polish')
Danish is “Dansk” and the cmdlets will fail, if I write ‘Danish’. All other languages must be provided in English.
Super confusing, but I guess the language name is translated into a LCID behind the scenes.
I would guess at least a lot of Germans, French and Spanish speaking countries, would potentially see this, given the preference for running the OS in native languages 😉
But now you know, should any other non-english speaking ppl comment on this 😉
-Heine
From: Aaron Czechowski<EMAIL_ADDRESS>Sent: 12. august 2020 02:00
To: MicrosoftDocs/sccm-docs-powershell-ref<EMAIL_ADDRESS>Cc: Heine Jeppesen<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/sccm-docs-powershell-ref] Language documentation missing and example 2 doesn't work (#179)
Thanks @heinejeppesenhttps://github.com/heinejeppesen for the feedback! I did some investigation with this today. I'll share some details below so that you can start using it. I'll make revisions to the doc (as well as the Set- and Get-), and hope to sneak it in with the 2006 content release soon. This issue will auto-close when the change merges.
I tested all of this with version 2006, but I don't think there was any changes to these cmdlets between 2002 and 2006.
In short, all three parameters (-Language, -LanguageSelection, and -O365LanguageSelection) appear to accept the same strings. They currently use the format you see in the UI for language criteria or Windows Update language selection. For now, I'd say ignore the additional languages and more detailed strings you see in the UI for O365 lang selection. Neither New- or Set- would accept those extended languages, only the core set you see with the other language settings.
Here's an example, which I successfully tested:
New-CMSoftwareUpdateAutoDeploymentRule -Name "pwsh test ADR" -CollectionId "XYZ0003F" -Language "English","Hungarian","Chinese (Simplified, PRC)" -Enable $false -EnabledAfterCreate $false -RunType DoNotRunThisRuleAutomatically -LanguageSelection "English","Hungarian","Chinese (Simplified, PRC)" -O365LanguageSelection "English","Hungarian","Chinese (Simplified, PRC)"
Note the format for the string arrays if you need to specify more than one language.
So in your case, you would just specify "Danish", for example:
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -O365LanguageSelection "Danish"
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -LanguageSelection "Danish"
Set-CMSoftwareUpdateAutoDeploymentRule -Name "AaronCz temp test 1" -Language "Danish"
Note: those commands overwrite, they are not additive. 😄
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/sccm-docs-powershell-ref/issues/179#issuecomment-672374178, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADRQMCDQHBICUJMPUZYZAOLSAHLO5ANCNFSM4P2LNIUA.

Thanks @heinejeppesen for sharing your experience for others. If you use Get-CMSoftwareUpdateAutoDeploymentRule and parse the XML, you'll see the lang IDs that the site stores. So the cmdlet and/or Windows is doing some conversion. I suppose it makes sense that if the system UI is another language, then you have to specify the localized name for the language. That's probably a good tip to include here.
As you can tell, this bug isn't fixed yet. I didn't get it in with the 2006 release as I had hoped. But I'm still working on some additional 2006 content for new BitLocker cmdlets, so will try to update this article with these revisions as part of that effort. You'll know when the work is complete and soon to publish as this issue will auto-close when the change merges.


:wastebasket: Deprecate the gpt-3.5-turbo model; use 4o-mini

@coderabbitai

Eh, code rabbit not working. I tested the code moving a user from 3.5-turbo to 4o-mini on startup and seems to work.


Feature/read inputbox between espresso

This hasn't been tested yet.
From what I see, Cappuccino uses Sepolia as L1. So tomorrow I will test with Sepolia

sorry wrong repo


[FEATURE] Chart tree support

Expected Behavior

On a chart with data points, an interaction with the data point would open a sub-chart.
For example on a bar chart when clicking on a single bar, the bar would explode into a sub chart which shows the components which are summed (or otherwise aggregated) into the bar which was clicked.
Assume that this chart is the number of flowers in my garden by color: https://codepen.io/amocsy/pen/LLjaQP
When I interact with Red:

it would shift the other bars left
replace the Red bar with another chart which shows the Red flowers by type (details chart)
shows some kind of button to close the details charts which would restore the original Red bar

Note: the aggregation subroutine should be external, so the sub-chart data should be defined the same way as any other chart. In the example context: the chart component need not bother with ensuring that Red 12 is the sum of my red flowers from the sub-chart.
Current Behavior

This http://www.chartjs.org/samples/latest/charts/bar/stacked-group.html can show several datasets on a single bar. Which is great, the new feature would allow users to dig deeper into the data.
Possible Solution

Due to the way how quickly arbitrary deep chart-trees could become unsightly, impose a limit on the number of open sub-charts both on the same level and in depth might make sense.
Since the aim is to simplify the UX, one level deepness of sub-charts is enough in my use-case.
This might also look nice with other chart types not just the bar.
Context

Have 7 charts showing flowers in my garden. The main one is the number of flowers aggregated by color. The other 6 is the flower types in each color group. I only want to show the flower types in a color group when the user interacts with the respective bar. Rather than having a new chart appear next to or below the main chart which would disrupt the UI layout, I want the detailed data to be shown on the main chart and give the main chart a bit more width if needed.
Environment

Chart.js version: upcoming
Browser name and version: any
Link to your project: https://codepen.io/amocsy/pen/LLjaQP

This might be achievable by detecting when you click on a bar and replacing the data on the chart. I think it would make sense for something like this to live as a plugin that takes a more tree-like data structure and uses it to do the data swaps with the underlying chart

Closing because this is not something that's on our roadmap as it's too specialized to be in the core library


Configuration map support for pixlet serve

pixlet render allows zero or more key/value pairs to be passed on the command line which end up in the configuration dictionary that's passed to the script. pixlet serve does not seem to support this yet even though there is some internal plumbing present already in the form of a config change channel.
Would it make sense to extend the serve command with the same config support as render? Or did you have something else planned here? I'm considering writing up a pull request for this so I would like to know in which direction you were going to take this.

You can pass the parameters on the HTTP request:
http://localhost:8080?my_config_param=value&second_param=another_value

Ok, that serves a slightly different purpose than what I had in mind. I was hoping to be able to start the server once with config values injected via the cli so that I could then periodically request the image with no query parameters at all.
The config parameters I have in mind are things like an api endpoint and auth key. You wouldn't want to pass those in via a query parameter.


unable to install report

I am following the readme
I am unable to install report
d:\bugs\loopback\gnosticTesting>go install   github.com/googleapis/gnostic/apps/report
can't load package: package github.com/googleapis/gnostic/apps/report: cannot find package "github.com/googleapis/gnostic/apps/report" in any of:
C:\Go\src\github.com\googleapis\gnostic\apps\report (from $GOROOT)
c:\go\src\github.com\googleapis\gnostic\apps\report (from $GOPATH)
so I tried
d:\bugs\loopback\gnosticTesting>go install   https://github.com/googleapis/gnostic/tree/master/apps/report
can't load package: package https:/github.com/googleapis/gnostic/tree/master/apps/report: cannot find package "https:/github.com/googleapis/gnostic/tree/master/apps/report" in any of:
C:\Go\src\https:\github.com\googleapis\gnostic\tree\master\apps\report (from $GOROOT)
c:\go\src\https:\github.com\googleapis\gnostic\tree\master\apps\report (from $GOPATH)
Then I tried
cloned the repo and then
d:\bugs\loopback\gnosticTesting>go install .\gnostic\apps\report
gnostic\apps\report\main.go:26:2: cannot find package "github.com/golang/protobuf/proto" in any of:
C:\Go\src\github.com\golang\protobuf\proto (from $GOROOT)
c:\go\src\github.com\golang\protobuf\proto (from $GOPATH)
gnostic\apps\report\main.go:29:2: cannot find package "github.com/googleapis/gnostic/OpenAPIv2" in any of:
C:\Go\src\github.com\googleapis\gnostic\OpenAPIv2 (from $GOROOT)
c:\go\src\github.com\googleapis\gnostic\OpenAPIv2 (from $GOPATH)
gnostic\apps\report\main.go:27:2: cannot find package "github.com/googleapis/gnostic/printer" in any of:
C:\Go\src\github.com\googleapis\gnostic\printer (from $GOROOT)
c:\go\src\github.com\googleapis\gnostic\printer (from $GOPATH)

copy all  the  files into gopath directory src folder
go to report folder and run go install


Unable to log in with session ID

I am unable to log in using a PoE session ID. The debug log implies there may be issues with Cloudflare.
Using Offline mode seems to be fine.
DebugInfo.log

I can replicate this issue.  It looks like Cloudflare has updated one of its challenges.  There is a pull request for the library we use for Cloudflare authentication that claims to fix this issue.  I should be able to make a PR for Procurement that patches in this bug fix, as a short-term solution.

Please try the version of Procurement from PR #1093, available at this link.  It worked for me to be able to log in to Procurement.

I can confirm it lets me log in.

I can't login with sessionId either (I used the test version from above link as well).
Please see:
DebugInfo.log

You're getting 503 and 401 errors from the server. The former suggests an
issue on GGG's end, and you can try again later. The latter suggests you
failed to authenticate properly. I would suggest you get a new Session ID
by logging out and back in to the website, and try logging in with that in
Procurement.
On Tue, Mar 24, 2020, 1:51 AM Arsi Rantala<EMAIL_ADDRESS>wrote:

I can't login with sessionId either (I used the test version from above
link as well).
Please see:
DebugInfo.log
https://www.dropbox.com/s/um4vpyfqxis4xvm/DebugInfo.log?dl=0
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Stickymaddness/Procurement/issues/1091#issuecomment-603031354,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACHNZMMVNSR23JS2WK667LRJBC6BANCNFSM4LDU4SLQ
.


update to gcc 11.4.0 musl 1.2.4 binutils 2.41 isl 0.26

Thanks. I'm looking at merging this but noticed a few things:

Hashes are added for gcc 11.3.0 and 13.2.0, but with no patchsets for them. 11.3.0 should just be omitted I think, since there's a newer version anyway. 13.2.0 or any other newer versions should be done as separate changes when patchsets are available

Linux versions (for headers) are added with no explanation or patches. 4.x headers are not time64-compatible without patching and cannot be used as-is. The versions we already support patch this, but the ones you're adding don't. I don't see any clear motivation for adding them; are there new uapi header changes you needed? 4.19 is LTS and may make sense to move to latest version, but 4.20 is not, and 5.x or even 6.x should be preferred for future.

Updating default versions in Makefile should be a separate commit, and shouldn't just arbitrarily change things like switching from linux-headers to linux upstream. That change may make sense but it needs to have a reason and should be its own commit explaining the reason.


To-do items for Release 1.0

Update: The new version (v1.0) will be released by Nov 1, 2023 tentatively. We plan to change the python package name from hn2016_falwa to falwa.

[ ] Python package name change from hn2016_falwa to falwa #91
[ ] Solve Memory Issues of QGField #50
[x] QGDataset does not support data input with even number of latitude gridpoints #85
[ ] Use pyproject.toml for setup #73

Reference: https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html

[ ] Provide default variable encoding parameters for xarray's to_netcdf #72
[x] Use Cartopy instead of Basemap (deprecated) in all the visualization examples #87
[ ] Generalize hemisphere_to_global to be used for both numpy and xarray interface #48
(to be cont.)
[x] Bug in GitHub action #82

We can defer addressing non-critical issues to the next release if time is running short.
Incremental changes will first be merged to branch release1.0. On the release date, branch release1.0 will be merged to master.

@chpolste Just a heads up: to test the MDTF PR, (and while I haven't heard from Noboru yet) I will deploy a pre-release version 1.0.0a0, hopefully working on test.pypi, or if not, on pypi.
Indexing notation

👍
I'm afraid the dask integration will have to wait for another release. I have set aside some time for the paper (if necessary), but it's too busy at the moment to engage with a side project as #50, unfortunately.

@chpolste Thanks for the update! Indeed the adjustment you have made in QGDataset is already super helpful and helped solve a bottleneck in the MDTF task (now it is running in reasonable time). I updated the issue ticket above to reflect what will be included in this release. Let's have the dask integration in upcoming release instead.
Given tomorrow is the MDTF monthly meeting, I wish to test submission today such that I can raise issues to the team tomorrow. Hopefully I can wrap up the paper in a day or two. I'll get in touch via email. Thank you for setting time aside for the paper 🙏

To rename package on PyPI index, see: https://github.com/simonw/pypi-rename


clarify to user that realm administrators can't read your PMs

It's mostly clear in the Zulip security model documentation that users with realm admin powers cannot read other users' private messages (unless those admins are also sysadmins), but that this may change in the future (which would, I assume, retroactively make old PMs also available for realm admins to read & audit). Is there some way to clearly indicate this to users, perhaps in documentation, perhaps in one of the welcome emails?

I've been thinking about what the right solution is for this question.  I kinda feel like there are 2 use cases here: community group who don't want admins to be able to read users' messages, and companies who often need that feature.
I think perhaps we want to have a Realm flag that is set at realm creation for whether a Zulip instance is a community group or a company (in terms of the PM history auditability question, we'd want a better name for the setting) and gate what the policy for that realm is based on this setting.
Thoughts on this?

Is it likely that various companies are just gonna write their own specific privacy policies, so we approach this more along the lines of encouraging realm admins in companies to review the default privacy policy and make it easy for them to override it?
Whatever we do, I think it's probably more important to make this convenient for community users than corporate users, since corporate users will probably already know to be proactive here.

@timabbott Thanks for the deeper thoughts on this. This might be too yak-shave-y of me, but I wonder whether there are other sets of defaults that would also likely depend on whether the realm is for a community group or a company. For instance, nearly all companies would want gatekeeping over who can register, whereas there'll be a lot more variability among community groups on open versus gatekept.
I can think of kinds of community realms where admins would want to be able to read user-to-user messages, and users would be fine with it as long as they knew. A few examples:

realms that are online adjuncts to in-person counseling groups
RP (role-playing) and similar gaming communities, where pairs and small groups need to be able to connive away from the eyes of the main group, but (for anti-abuse and scorekeeping purposes) admins need to be able to view private messages

This is the kind of question that Simply Secure could probably help us think through.

@timabbott Merged in commit 07d8494, sorry for not including it in the commit message.

Cool, I did a refinement to that text in 5f4ddb907955133e5af2e7f007cc88ba523a11fb to cover the new community/corporate organization types; I think that covers this acceptably.  Thanks @synicalsyntax!


Edited admin index counting to only include confirmed profiles

Edited app/views/admin/profiles/index.html.erb and config/locales/de.yml in order to fix the following issue: https://github.com/rubymonsters/speakerinnen_liste/issues/660

Thanks a lot! I have just added the English translation :) The branch is deployed and online :D
:two_hearts:


Feature/3549/workflow badge

For dockstore/dockstore#3549
Putting the preview badge next the radio button (can't put it below because it looks weird when there's additional text once selected)

Put the preview badge next to the title (kind of weird, might not be entirely obvious why the workflow is in preview mode)

I also think the preview badge next to the title is odd, but I'm not sure what would help. Can you put a tool tip? I feel like users, other than the developer, wouldn't know it's in preview mode just because of the descriptor type.

Also (or alternatively) maybe put the badge in the info tab where it says descriptor type? If it's possible.

I also think the preview badge next to the title is odd, but I'm not sure what would help. Can you put a tool tip? I feel like users, other than the developer, wouldn't know it's in preview mode just because of the descriptor type.

Also (or alternatively) maybe put the badge in the info tab where it says descriptor type? If it's possible.

It already has "preview" in brackets there. I considered putting the badge there instead, but thought it might be weird because the stub mode dropdown that is in the same place can't deal with badges


EquilibriumState: nu / mu of phase

Hello Caleb,
long time no see, I hope you are well up.
Not sure but this should work? Or at least not raise an exception:
I could not dive deeper as I'm unable to locate the problem as eq.mu is magical added to the object.
cheers simon
CEOSLiquid(eos_class=PRMIX, eos_kwargs={"Tcs": [190.564], "Pcs": [4599200.0], "omegas": [0.01142], "kijs": [[0.0]]}, HeatCapacityGases=[HeatCapacityGas(CASRN="74-82-8", MW=16.04246, similarity_variable=0.3116728980468083, extrapolation="linear", method="HEOS_FIT", tabular_data={'VDI_TABULAR': ([111.67, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0, 180.0, 185.0, 190.0], [34.68379852, 36.78536078, 38.83879566, 41.88686306, 46.65147368, 54.84917074, 71.53332914,<PHONE_NUMBER>4,<PHONE_NUMBER>2, 2258.9387926]), 'JANAF': ([0.0, 100.0, 200.0, 250.0, 298.15, 300.0, 350.0, 400.0, 450.0, 500.0, 600.0, 700.0, 800.0, 900.0, 1000.0, 1100.0, 1200.0, 1300.0, 1400.0, 1500.0, 1600.0, 1700.0, 1800.0, 1900.0, 2000.0, 2100.0, 2200.0, 2300.0, 2400.0, 2500.0, 2600.0, 2700.0, 2800.0, 2900.0, 3000.0, 3100.0, 3200.0, 3300.0, 3400.0, 3500.0, 3600.0, 3700.0, 3800.0, 3900.0, 4000.0, 4100.0, 4200.0, 4300.0, 4400.0, 4500.0, 4600.0, 4700.0, 4800.0, 4900.0, 5000.0, 5100.0, 5200.0, 5300.0, 5400.0, 5500.0, 5600.0, 5700.0, 5800.0, 5900.0, 6000.0], [0.0, 33.258, 33.473, 34.216, 35.639, 35.708, 37.874, 40.5, 43.374, 46.342, 52.227, 57.794, 62.932, 67.601, 71.795, 75.529, 78.833, 81.744, 84.305, 86.556, 88.537, 90.283, 91.824, 93.188, 94.399, 95.477, 96.439, 97.301, 98.075, 98.772, 99.401, 99.971, 100.489, 100.96, 101.389, 101.782, 102.143, 102.474, 102.778, 103.06, 103.319, 103.56, 103.783, 103.99, 104.183, 104.363, 104.531, 104.688, 104.834, 104.972, 105.101, 105.223, 105.337, 105.445, 105.546, 105.642, 105.733, 105.818, 105.899, 105.976, 106.049, 106.118, 106.184, 106.247, 106.306])})], T=1.0, P=1.0, zs=(1.0,))
eq.nu(phase)
Traceback (most recent call last):
File "C:\Program Files\JetBrains\PyCharm Community Edition 2024.2.1\plugins\python-ce\helpers\pydev_pydevd_bundle\pydevd_exec2.py", line 3, in Exec
exec(exp, global_vars, local_vars)
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1, in
TypeError: _make_getter_bulk_props..get_bulk_prop() takes 1 positional argument but 2 were given
eq.nu(phase=phase)
Traceback (most recent call last):
File "C:\Program Files\JetBrains\PyCharm Community Edition 2024.2.1\plugins\python-ce\helpers\pydev_pydevd_bundle\pydevd_exec2.py", line 3, in Exec
exec(exp, global_vars, local_vars)
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1, in
TypeError: _make_getter_bulk_props..get_bulk_prop() got an unexpected keyword argument 'phase'

Hi Caleb,
Here is an minimum example. Looks like it occurs with any state.
The example is decuced from how we build the flasher and flash to the given state.
Maybe it is just an error from my side.
class TestViscosity:
    def test_bug(self):
        '''
        Looks like a bug.
        https://github.com/CalebBell/thermo/issues/159
        '''
        names = ['methane', 'ethane']
        constants, properties = ChemicalConstantsPackage.from_IDs(names)
        eos_kwargs = dict(Tcs=constants.Tcs, Pcs=constants.Pcs, omegas=constants.omegas)
        phase_model_gas = CEOSGas(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        phase_model_liquid = CEOSLiquid(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        flasher = FlashVL(constants, properties, phase_model_gas, phase_model_liquid)
        zs = [.5,.5]

        eq: EquilibriumState = flasher.flash(zs, 300, 5_000_000)
        assert eq.phase == 'V'
        bulk_mu = eq.mu()
        assert isinstance(bulk_mu, float) # works
        try:
            mu = eq.mu(flasher.phases[0]) # error
        except TypeError as e:
            assert e

        eq = flasher.flash(zs, 50, 500)
        assert eq.phase == 'L'
        try:
            mu = eq.mu(flasher.phases[0]) # error
        except TypeError as e:
            assert e

        eq1 = flasher.flash(zs, 1,1)
        assert eq.phase == 'L'
        try:
            mu = eq1.mu(flasher.phases[0]) # error
        except TypeError as e:
            assert e

Hi Caleb,
I do also not understand for what reason there is a second dynamic added method.
    def test_kinematic_viscosity_function(self):
        names = ['methane', 'ethane']
        constants, properties = ChemicalConstantsPackage.from_IDs(names)
        eos_kwargs = dict(Tcs=constants.Tcs, Pcs=constants.Pcs, omegas=constants.omegas)
        phase_model_gas = CEOSGas(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        phase_model_liquid = CEOSLiquid(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        flasher = FlashVL(constants, properties, phase_model_gas, phase_model_liquid)
        zs = [.5, .5]

        eq: EquilibriumState = flasher.flash(zs, 300, 5_000_000)
        assert eq.phase == 'V'
        expected_nu = eq.nu()
        nu = eq.kinematic_viscosity()
        assert nu == expected_nu
        assert eq.kinematic_viscosity is not eq.nu # this indeed clear. However, the repr shows that both pointing to the same root.

Hi Caleb,
thanks for the explanation.
I understand the point and it is not a big deal to interact with the phase directly instead through eqs.
But it is quiet easy to misinterpret the interface at the moment.
Simon
P. S.
Here is a snippet demonstrating what Caleb is suggesting
    def test_viscosity_on_phase(self):
        '''
        Explanation to others on
        https://github.com/CalebBell/thermo/issues/159
        '''
        names = ['methane', 'ethane']
        constants, properties = ChemicalConstantsPackage.from_IDs(names)
        eos_kwargs = dict(Tcs=constants.Tcs, Pcs=constants.Pcs, omegas=constants.omegas)
        phase_model_gas = CEOSGas(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        phase_model_liquid = CEOSLiquid(PRMIX, eos_kwargs=eos_kwargs, HeatCapacityGases=properties.HeatCapacityGases)
        flasher = FlashVL(constants, properties, phase_model_gas, phase_model_liquid)
        zs = [.5, .5]

        eq: EquilibriumState = flasher.flash(zs, 300, 5_000_000)
        # that's how we should do it by default
        assert eq.gas.mu()
        # if needed one also can do following
        eq: EquilibriumState = flasher.flash(zs, 300, 5_000_000)
        current_gas_phase,*_ = eq.phases
        assert current_gas_phase.mu()
        # the above allows a user to wrap the current phase object into anything else:
        class MyPhaseClass:
            current_phase = None
            def get_some_special_property_regardless_what_phase_and_lazy(self):
                return self.current_phase.rho_mass() * 100
        liquid_phase = MyPhaseClass()
        eq: EquilibriumState = flasher.flash(zs, 300, 5_000_000)
        liquid_phase.current_phase = eq.phases[0]
        # do other stuff
        # time to call the property
        assert liquid_phase.get_some_special_property_regardless_what_phase_and_lazy()


Pass AbortSignal to callbacks passed to defer(), switchMap() etc

Description:
This is a small PoC for my proposal outlined in https://github.com/ReactiveX/rxjs/issues/3122#issuecomment-382096053
Initially for defer() and switchMap().
AbortControllers only get instantiated if available in the environment so nothing breaks if they are not polyfilled.
Note that I am creating AbortControllers in the operator implementations - ideally those would be passed to the callback of the Observable constructor, but that was more effort to implement. My goal was just to create a PoC and keep the discussion going as this has been an ongoing pain point.
Related issue (if exists):
https://github.com/ReactiveX/rxjs/issues/3122#issuecomment-382096053

Coverage decreased (-0.2%) to 96.767% when pulling f0a2ad396e8275e0fb42356369a3d6fdb71e80ca on felixfbecker:abortsignal into 9ea0ec93d2c675d42e99021af7a0e223585e615a on ReactiveX:master.

Considering right now AbortSignal isn't widely used or supported

Are you referring to browser support? AbortSignal is supported by all modern browsers:

And it's already used by fetch and the WebAuthentication API (https://github.com/w3c/webauthn/pull/544)
It's not supported in NodeJS of course, but I would take the same stance as with Promises - you can polyfill if you want to use it.
For the future, Node has shipped DOM APIs before - e.g. WHATWG URL

given that Subscription is basically both an AbortController and an AbortSignal.

I think this ascpect makes Subscription basically unusable for a general-purpose cancellation signal. If I pass a signal to a function, that function should have the ability to fork the token and cancel sub-operations, but it should never be able to cancel the operations of the caller.

In the experimental branch, I'm pasing Subscription as a cancellation token of sorts to methods like forEach and toPromise. I hadn't thought about defer, etc.

For me, defer, switchMap etc. are actually the more important use cases, because I see a lot that people want to do single-result Promise operations for every event in an Observable chain (e.g., call the fetch API or an API wrapper that returns a single result in reaction to events). Only rarely do you need to use a (multi-value) Observable from within an async function.


Hue Bridge API Update from 1.53.0 to 1.55.0 causes warnings

Issue

Hi,
I think the Hue Bridge API was updated and now I get this warnings after (re-)starting HueBridge. Could you please check if the API is compatible and recommend the higher version?
Thank you for this plug-in and all your work on it!
Cheers
Michael
Log Messages

[5.1.2023, 09:14:54] [HueBridge] Philips Hue: Signify Netherlands B.V. BSB002 bridge v1955082050, api v1.55.0
[5.1.2023, 09:14:54] [HueBridge] Philips Hue: warning: not using recommended Hue bridge api version 1.53.0

Debug Files

Could you please check if the API is compatible

No.
The good folk at Signify haven't published any changelog since API v1.39, and the release notes don't even mention API versions.
I only use my Hue bridge for reverse-engineering new Hue devices, so I wouldn't notice any incompatibilities.  It looks like my bridge updated on Dec 12, and I hadn't even noticed it before.  I'm really relying on you folks to report any issues, and if there aren't, I'm happy to bump the dependency, to get rid of the warning.

@ebaauw mine updated approx. a months ago and I did not recognize any issues with 1.55. Looks good so far.

And now we have 1.56.0, with functional changes to the event stream, see #1142.


Animation branch

Merge the branch "animationBranch", which was temporarily created to test the implementation of simple button hover and page transition animations within MainPage.js & HelpPage.js, as well as slight modifications to the animations within UploadPage.js & EnablePage.js for style and smoothness improvements, into master. No new dependencies were added, overall is just an aesthetic update. Also added svg animations to enable and end pages.

Just add a few more detailed comments but overall great


Dashboard task activity - Configurable

Right now we have a dashboard activity type in the assign page, but this really doesn't do anything since that is only reported on request creation and not afterwards.
There is a request to make it configurable so we should do some changes at some point, not really a priority though.

We do have "Dashboard" parameter which is set during assignment.
So we can close this issue @ticoann

@ticoann please close this one


Question about concatenate afpk files

Hi @dpwe , first of all, congratz for this awsome tool for python.
I have question:
Supouse that i have two afpk files of A.wav and B.wav, where A and B are consecutive audio chunks in time.
Then, afpk files contains
A.afpk -> audfprintpeakV00--bytes of afpk A--
B.afpk -> audfprintpeakV00--bytes of afpk B--
If i concatenate the data inside the files in this way:
AB.afpk -> audfprintpeakV00--bytes of afpk A----bytes of afpk B--
This is equivalent to afpk extracted from A.wav concatenated with B.wav ?

Sadly no, I think. Each peak is recorded as a (time index, bin index) pair, and the time indices are absolute (and maybe assumed monotonic).  If you appended the wav files, B would begin at a time corresponding to the end of A, whereas B analyzed alone will begin at time zero.
You could modify the afpk format to write (delta-from-previous-time, bin), and then re-accumulate the times when reading back. Then it would probably work.

Oh okay, probably ill make a function to "merge" afpks that take as arggument the offstet time between recorded files
Thank you very much, I really appreciate your answer!


Use tpidrro_el0 for thread local storage in macOS-arm64

Fixes #343

Just want to confirm that this PR is working for me.
There is still a #if defined(__MACH__) on line 737 though, I guess this also has to be replaced with __APPLE__?

Just want to confirm that this PR is working for me.
There is still a #if defined(__MACH__) on line 737 though, I guess this also has to be replaced with __APPLE__?

Ah, this is very cool -- thanks so much @xhochy !

Ah, this is very cool -- thanks so much @xhochy !


py.typed file is not including in output wheel

PEP-561 outlines how packages should indicate they supply type information.

Package maintainers who wish to support type checking of their code MUST add a marker file named py.typed to their package supporting typing.

The PEP also provides an example of how to include this information when using build backends like setuptools
setup(
    ...,
    package_data = {
        'foopkg': ['py.typed'],
    },
    ...,
    )

I am trying to build a wheel with Nuitka following Use Case 5 - Setuptools Wheels from the guide. My configuration for nuitka in my pyproject.toml file is very simple.
[build-system]
requires = ["setuptools>=42", "wheel", "nuitka", "toml"]
build-backend = "nuitka.distutils.Build"

[nuitka]
disable-ccache = true

I have tried to have Nuitka include the py.typed file in my package in the final wheel by specifying different variations of incldue-package-data and include-data-files including the equivalent of what is suggested in the PEP, however none of these approaches result in the py.typed file being included in the final wheel.
Since Nuitka already (very nicely!) generates a pyi file to be included in the wheel, it would be great to be able to include a py.typed file as well for consistent behavior with IDEs and static type checkers like mypy.
Versions:
(.venv)  > python -m nuitka --version
1.5.7
Commercial: None
Python: 3.9.5 (v3.9.5:0a7dcbdb13, May  3 2021, 13:17:02)
Flavor: CPython Official
Executable: .venv/bin/python
OS: Darwin
Arch: x86_64
Version C compiler: /usr/bin/clang (clang).

But looking into it, what I find is that the data file handling is entirely left to distutils, so this would be only relevant for commercial builds, where extension modules can have embedd files into themselves. The options you list, would have to give an error without using commercial and embedding.
Mind, you Nuitka is not building the wheel, it's only used to build the extension module, everything else is left to distutils/setuptools there.
I think you need to figure out how to provide data files with the build package, then you will have it correctly. The example using setup() would have to work already. If you find out how it' done please report here, I will gladly add data files to the examples, because I agree, this is very much not obvious.

Mind, you Nuitka is not building the wheel, it's only used to build the extension module, everything else is left to distutils/setuptools there.

This was what  I was missing, I assumed Nuitka was building the wheel here. I had tried specifying the package data like this since the docs indicate other CLI parameters being specified this way and the CLI has options for --include-package-data and --include-data-files, but this does not work.
[nuitka]
include-package-data = "foopkg=py.typed"

However, specifying the package data under the setuptools section does indeed result in the desired wheel: extension module + py.typed file.
[tool.setuptools.package-data]
foopkg = ['py.typed']

Thanks!


Lost Private Key after sysprep

Details of the scenario you tried and the problem that is occurring:
After syspreping a server, the certificate is left in the cert store but the private key is removed during the sysprep process. xPfxImport only checks to ensure the thumbprint is present. It does not check to see if the certificate has a private key so it never imports the pfx file and the certificate.
The DSC configuration that is using the resource (as detailed as possible):
xPfxImport Wildcard
{
Thumbprint = $wildcardthumbprint
Path       = $certificatepath
Location   = 'LocalMachine'
Store      = 'My'
Exportable = $true
Credential = $Credential1
Ensure     = 'Present'
DependsOn  = "[xDSCDomainjoin]JoinDomain"
}
Version of the Operating System and PowerShell the DSC Target Node is running:
DSC running in Azure
OS version: 2012R2
Version of the DSC module you're using, or 'dev' if you're using current dev branch:
xCertificate <IP_ADDRESS>

Hi @mattbowes - ah, this is a great catch.
We should be able to fix this by changing the Test-TargetResource to check the Private Key with something like this:
(Get-ChildItem -path Cert:\LocalMachine\My\498F1F592D3E56A7124BBCD65AE70C1FD615BDE5).HasPrivateKey

Might have a look at this tonight.

@PlagueHO checking .hasPrivateKey still wont work after a sysprep. It returns true even though the private key is gone.
If you run something like
(gci cert:\localmachine\my | where thumbprint -eq $thumb).HasPrivateKey
(gci cert:\localmachine\my | where thumbprint -eq $thumb).PrivateKey.CspKeyContainerInfo
you will see that .hasPrivateKey returns true but CSPKeyContainerInfo returns nothing. The private key file on the file system does not exist.
Could the check be changed to
if ($certificate.hasprivatekey -and $certificate.PrivateKey.CspKeyContainerInfo)

I MSFT_PfxImport.psm1 and created a pull request. I think that will fix it

Simplified from this excellent post: http://paulstovell.com/blog/x509certificate2
The Public key is (usually) written to registry, and the Private key written to file (never stored together, unless exported to PFX), either with system/machine files or User data. The point is that it's only 'linked' by the .Net object, but not really the same thing at all, and stored differently.
When the cert request is still stored with all info, a /repairstore can fix that issue.
But sysprep destroys personal data to generalise the machine, hence probably why I think it's lost.
Even if the file is still there, it can be inaccessible, because of permissions.
Anyhow, up until .Net 4.8 (with GetRSAPrivateKey()) there's no easy way to get the Private key, and I'm yet to find a nice way to find if the Private key is actually available on the system or not (something quick we can run every 15min).
Until then, there's not much we can do on the resource side.


xds gen with autoallocated ip v2

Please provide a description of this PR:
adds consuming v2 autoallocated IPs from service entry status during conversion of the service entry
reviewer note this presently contains a version of https://github.com/istio/istio/pull/52095 which will be removed once that review is completed. I believe you can basically ignore the changes in pilot/pkg/controllers/ipallocate/ipallocate.go as a result. Sorry for the hassle.

@ilrudie: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ilrudie: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test release-notes

gencheck_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ilrudie: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test release-notes

gencheck_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test gencheck

lint_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test lint

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@ilrudie: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test gencheck

lint_istio
a4d3c53b544d75f6ff245399b988d5dae6e14376
link
true
/test lint

release-notes_istio
0d9448113d4c922b61aab7975991b42e8ac719b8
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Rebased and stripped out the changes that were merged in #52095. I added a hold incase you wanted to take another look post rebase @howardjohn

/test release-notes

@howardjohn, should we have cherry-picked this since waypoint depends on it?

/cherrypick release-1.23
On Thu, Jul 18, 2024 at 6:45 PM Ian Rudie @.***> wrote:

@howardjohn https://github.com/howardjohn, should we have cherry-picked
this since waypoint depends on it?
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/52125#issuecomment-2237860636, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXNAVY6AE3ZABZOTIRTZNBVTZAVCNFSM6AAAAABLBMFGFCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMZXHA3DANRTGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@howardjohn: #52125 failed to apply on top of branch "release-1.23":
Applying: xds gen with auto ip v2
Using index info to reconstruct a base tree...
M	pilot/pkg/serviceregistry/serviceentry/conversion.go
Falling back to patching base and 3-way merge...
Auto-merging pilot/pkg/serviceregistry/serviceentry/conversion.go
CONFLICT (content): Merge conflict in pilot/pkg/serviceregistry/serviceentry/conversion.go
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 xds gen with auto ip v2
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

In response to this:

/cherrypick release-1.23
On Thu, Jul 18, 2024 at 6:45 PM Ian Rudie @.***> wrote:

@howardjohn https://github.com/howardjohn, should we have cherry-picked
this since waypoint depends on it?
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/52125#issuecomment-2237860636, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXNAVY6AE3ZABZOTIRTZNBVTZAVCNFSM6AAAAABLBMFGFCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMZXHA3DANRTGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@howardjohn: new issue created for failed cherrypick: #52181

In response to this:

/cherrypick release-1.23
On Thu, Jul 18, 2024 at 6:45 PM Ian Rudie @.***> wrote:

@howardjohn https://github.com/howardjohn, should we have cherry-picked
this since waypoint depends on it?
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/52125#issuecomment-2237860636, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXNAVY6AE3ZABZOTIRTZNBVTZAVCNFSM6AAAAABLBMFGFCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMZXHA3DANRTGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.


HSEARCH-5038 Align vector similarity naming between backends / HSEARCH-5056 Rename VectorField#beamWidth / VectorField#maxConnections to align with Elasticsearch/OpenSearch naming

https://hibernate.atlassian.net/browse/HSEARCH-5038
https://hibernate.atlassian.net/browse/HSEARCH-5056
@fax4ever this particular change (the last commit) may be interesting for you since it'll rename one constant (INNER_PRODUCT -> DOT_PRODUCT) and add one more (MAX_INNER_PRODUCT) in the VectorSimilarity enum.

@marko-bekhta Looks like this needs rebasing :D

😱 😨 😅


[admin] Publish

Docs Build status updates of commit b2d1889:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/external-calls.md
:white_check_mark:Succeeded
View

docs/images/all-files-in-folder-sample-flow-1.PNG
:white_check_mark:Succeeded
View

docs/images/all-files-in-folder-sample-flow-2.PNG
:white_check_mark:Succeeded
View

docs/images/all-files-in-folder-sample-flow-3.PNG
:white_check_mark:Succeeded
View

docs/images/email-chart-sample-flow-1.PNG
:white_check_mark:Succeeded
View

docs/images/email-chart-sample-flow-2.PNG
:white_check_mark:Succeeded
View

docs/resources/samples/automate-tasks-on-all-excel-files-in-folder.md
:white_check_mark:Succeeded
View

docs/resources/samples/community-seasons-greetings.md
:white_check_mark:Succeeded
View

docs/resources/samples/email-images-chart-table.md
:white_check_mark:Succeeded
View

docs/resources/samples/external-calls.md
:white_check_mark:Succeeded

docs/resources/samples/external-fetch-calls.md
:white_check_mark:Succeeded
View

docs/resources/samples/happy-tree.xlsx
:white_check_mark:Succeeded
View

docs/resources/samples/samples-overview.md
:white_check_mark:Succeeded
View

docs/toc.yml
:white_check_mark:Succeeded
View

licensing-information.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Switch to explicit platform list for cargo vendor-filterer

See https://github.com/coreos/cargo-vendor-filterer/issues/50 This fixes an error trying to vendor for m68k.
Also while we have the patient open, move the platform list to Cargo.toml in declarative format.
Copied as is from https://github.com/containers/netavark/pull/568 by Colin Walters<EMAIL_ADDRESS>Signed-off-by: Lokesh Mandvekar<EMAIL_ADDRESS>

@flouthoc @Luap99 @mheon @baude PTAL

/lgtm


How to use more io_threads in device

I want use more io_threads number in the device, How can i set the io_threads params in ProcessDevice or ThreadDevice, thanks

Sorry for missing this ancient question, but Device has a context_factory attribute, which is zmq.Context.instance by default.
This can be any callable that returns a context, e.g.
dev = ProcessDevice()
...
def context_with_threads():
    return zmq.Context(io_threads=5)

dev.context_factory = context_with_threads
dev.start()


[stable/rabbitmq] does this work on minikube?

Tried installing rabbitmq via helm using minikube & virtualbox and I keep getting 500 errors for the api, and nothing showing up in the logs. Has this been tested using minikube?

Same here, the rabbitmq server is crashing:
=ERROR REPORT==== 23-Mar-2017::14:11:39 ===
** Generic server rabbit_mgmt_external_stats terminating
** Last message in was emit_update
** When Server state == {state,65536,
                               [{{io_file_handle_open_attempt,count},10},
                                {{io_file_handle_open_attempt,time},524},
                                {{io_read,bytes},1},
                                {{io_read,count},1},
                                {{io_read,time},24},
                                {{io_reopen,count},0},
                                {{io_seek,count},0},
                                {{io_seek,time},0},
                                {{io_sync,count},0},
                                {{io_sync,time},0},
                                {{io_write,bytes},0},
                                {{io_write,count},0},
                                {{io_write,time},0},
                                {{mnesia_disk_tx,count},12},
                                {{mnesia_ram_tx,count},2},
                                {{msg_store_read,count},0},
                                {{msg_store_write,count},0},
                                {{queue_index_journal_write,count},0},
                                {{queue_index_read,count},0},
                                {{queue_index_write,count},0}],
                               {set,0,16,16,8,80,48,
                                    {[],[],[],[],[],[],[],[],[],[],[],[],[],
                                     [],[],[]},
                                    {{[],[],[],[],[],[],[],[],[],[],[],[],[],
                                      [],[],[]}}},
                               undefined,5000}
** Reason for termination ==
** {bad_return_value,
       {error,
           {cannot_read_enabled_plugins_file,
               "/opt/bitnami/rabbitmq/etc/rabbitmq/enabled_plugins",eacces}}}

=ERROR REPORT==== 23-Mar-2017::14:11:44 ===
** Generic server rabbit_disk_monitor terminating
** Last message in was update
** When Server state == {state,"/opt/bitnami/rabbitmq/var/lib/rabbitmq/mnesia/rabbit@localhost",
                               50000000,16256741376,100,10000,#Ref<<IP_ADDRESS>2>,
                               false,true}
** Reason for termination ==
** {{unparseable,"/bin/df: '/opt/bitnami/rabbitmq/var/lib/rabbitmq/mnesia/rabbit@localhost': Permission denied\n"},
    [{rabbit_disk_monitor,parse_free_unix,1,
                          [{file,"src/rabbit_disk_monitor.erl"},{line,226}]},
     {rabbit_disk_monitor,internal_update,1,
                          [{file,"src/rabbit_disk_monitor.erl"},{line,193}]},
     {rabbit_disk_monitor,handle_info,2,
                          [{file,"src/rabbit_disk_monitor.erl"},{line,165}]},
     {gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,593}]},
     {gen_server,handle_msg,5,[{file,"gen_server.erl"},{line,659}]},
     {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]}

=INFO REPORT==== 23-Mar-2017::14:11:44 ===
Disabling disk free space monitoring on unsupported platform:
{{'EXIT',{unparseable,"/bin/df: '/opt/bitnami/rabbitmq/var/lib/rabbitmq/mnesia/rabbit@localhost': Permission denied\n"}},
<PHONE_NUMBER>}

For the record, starting it with helm install --set persistence.enabled=false stable/rabbitmq works!
It seems that the volume storage overrides the permissions set on those files.

It seems that you have some problems with file permissions, and if you do not persist the installation by setting  persistence.enabled=false, it  works as expected
** Reason for termination ==
** {bad_return_value,
       {error,
           {cannot_read_file,
<EMAIL_ADDRESS>               eacces}}}

Yeah, it seems like an issue with the VM/minikube driver possibly

@archSeer @sharif9876. This was an issue with minikube hostPath volume mount permissions which seems to have been resolved in minikube 1.18.0. Request you to retry after updating minikube.
Do let us know if this resolves the issue. Thanks for taking the time to report this issue :beers:

closing as this issue is fixed by upgrade to minikube 1.18.0 or higher