Inconsistent language edit

Description of bug
The editing of language elements is inconsistent. Editing a text element is not saved until you explicitly press the save button
Steps to reproduce
List the steps to reproduce the behaviour:

Go to Host/Site Settings/Language/Edit text
Select a source file (.resx file)
The individual text elements can be edited by pressing the Pencil at the right side of the text
After editing the text in a pop-up text box, you click Save at the bottom of the popup

Current result
The new text is NOT saved
Only if you scroll back to the top and press Save Translations, the changes are saved.
This is not expected, especially if you edit text elements in a large .resx file and are at the bottom of the list.
Expected result
Save a text should save a text?
Screenshots

Affected version

[X] 10.0.0 nightly build
[X] 9.4.1 nightly build
[X] 9.4.0 release candidate
[X] 9.3.2 latest supported release

Affected browser

[X] Chrome
[X] Firefox
[X] Safari
[X] Internet Explorer
[X] Edge

still an issue


Cookbook up for adoption

This cookbook is up for adoption. We moved on from using the Oracle JDK after they began requiring sign-in for downloading LTS versions and I am no longer maintaining it.

https://www.oracle.com/java/technologies/downloads/
java_se.zip
Just changed the download location and updated hash codes with checksum and tried on my test node and it installed fine
Just in case you would like to update it on this forum please feel free. No login was required when I tried to download the tar file.


[BUG] Application fails with a KeyError: 'show_headers' error

Describe the bug 🐛
When launching dooit, the application exits with the following error:
Traceback (most recent call last):
  File "/usr/local/bin/dooit", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/site-packages/dooit/__init__.py", line 5, in main
    Doit.run()
  File "/usr/local/lib/python3.10/site-packages/textual/app.py", line 206, in run
    asyncio.run(run_app())
  File<EMAIL_ADDRESS>line 44, in run
    return loop.run_until_complete(main)
  File<EMAIL_ADDRESS>line 646, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.10/site-packages/textual/app.py", line 204, in run_app
    await app.process_messages()
  File "/usr/local/lib/python3.10/site-packages/textual/app.py", line 291, in process_messages
    await self.dispatch_message(load_event)
  File "/usr/local/lib/python3.10/site-packages/textual/message_pump.py", line 232, in dispatch_message
    await self.on_event(message)
  File "/usr/local/lib/python3.10/site-packages/textual/app.py", line 434, in on_event
    await super().on_event(event)
  File "/usr/local/lib/python3.10/site-packages/textual/message_pump.py", line 254, in on_event
    await invoke(method, event)
  File "/usr/local/lib/python3.10/site-packages/textual/_callback.py", line 29, in invoke
    result = await result
  File "/usr/local/lib/python3.10/site-packages/dooit/ui/tui.py", line 67, in on_load
    self.show_header = conf.load_config()["show_headers"]
KeyError: 'show_headers'

To Reproduce 🐣
Steps to reproduce the behavior:

Run python3 -m pip install git+https://github.com/kraanzu/dooit.git as described in the README.md
Run dooit

Expected behavior  🤔
The app runs without an error.
Desktop (please complete the following information):  🤖

OS: macOS 12.4
Version: HEAD

Additional context 📝
It seems like commit https://github.com/kraanzu/dooit/commit/2aa9e7663db1bb90bc4348a09682e106dde06a3f, which closed #29, has caused this problem.

My bad... I need to re-write the config.
I'll push an update rn :(


[Event Request] OnBeforeGetNewDimSetID in Purchase Header table

Hello, please publish this event in the Purchase Header table:
    [IntegrationEvent(false, false)]
    local procedure OnBeforeGetNewDimSetID(var PurchLine: Record "Purchase Line"; NewParentDimSetID: Integer; OldParentDimSetID: Integer)
    begin
    end;

and raise it in the UpdateAllLineDim procedure:
    procedure UpdateAllLineDim(NewParentDimSetID: Integer; OldParentDimSetID: Integer)
    var
        [...]
    begin
        [...]

        PurchLine.Reset();
        PurchLine.SetRange("Document Type", "Document Type");
        PurchLine.SetRange("Document No.", "No.");
        PurchLine.LockTable();
        if PurchLine.Find('-') then
            repeat
                OnBeforeGetNewDimSetID(PurchLine, NewParentDimSetID, OldParentDimSetID);
                NewDimSetID := DimMgt.GetDeltaDimSetID(PurchLine."Dimension Set ID", NewParentDimSetID, OldParentDimSetID);
                [...]
            until PurchLine.Next() = 0;
    end;

Thank you!

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


PHP 8.4 support?

PHP 8.4 was released, a few new features, bug fixes and improvements involved, how about update to the latest version.
See https://www.php.net/releases/8.4/en.php.

That's on its way.


Set the peel-version in the archetype POMs to 1.0.0-beta.

This should make the peel-version consistent with the version deployed to the maven repository.

I think a better way would be to push a release candidate rc1 or something like that.


Visual Studio 2017

Any chance ya'll could support Visual Studio 2017 too? https://suave.io/ uses libuv and I want to upgrade its build to VS 2017, but need libuv working with it first. I was hoping set GYP_MSVS_VERSION=2017 would work, but I guess not. As is right now with, this errors with:
https://ci.appveyor.com/project/ctaggart/libuv/build/job/y841gaeo6okfpl9l
set GYP_MSVS_VERSION=2015
vcbuild.bat release %ARCH% shared
['-Dtarget_arch=ia32', '-Duv_library=shared_library', '.\\uv.gyp', '-I', '.\\common.gypi', '--depth=.', '-Dhost_arch=x64']
Project files generated.
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
  fs-poll.c
  inet.c
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h(10): fatal error C1083: Cannot open include file: 'vcruntime.h': No such file or directory (compiling source file src\fs-poll.c) [C:\projects\libuv\libuv.vcxproj]
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h(10): fatal error C1083: Cannot open include file: 'vcruntime.h': No such file or directory (compiling source file src\inet.c) [C:\projects\libuv\libuv.vcxproj]
  loop-watcher.c
  threadpool.c

Maybe cc/ @refack and @joaocgreis, who did the equivalent node-gyp update.

Looking in...

Visual Studio 2017 loads and modifying the file locally. It simply changed the PlatformToolset from v140 to v141. For the AppVeyor build, I just codes that change in appveyor.ps1.
To build locally, I had to install:

Standard Library Modules
VC++ 2017 v141 toolset (x86,x64)
Windows 10 SDK (10.0.10240.0)

You can actually create a script like I did for F# with Add-VisualStudioComponents.ps1 to add help develops install those dependencies. Would ya'll like one?

Okay, this works now. https://ci.appveyor.com/project/ctaggart/libuv/build/v1.10.2.build15

We have a way to trick GYP into outputting VS2017 compatible vcxproj files by itself...
Also It you don't add <WindowsTargetPlatformVersion>10.0.14393.0</WindowsTargetPlatformVersion> VS will assume windows 8.1 SDK so wither add the settings to the vcxproj files, or the SDK to Add-VisualStudioComponents.ps1

Thanks @refack, I've updated this pull request to make that change too.  This pull request adds two files:

scripts/Add-VisualStudioPackages.ps1
scripts/Update-ProjectFilesToVS2017.ps1

The appveyor.yml is updated to run on Visual Studio 2017 and it uses the Update-ProjectFilesToVS2017.ps1.
The Add-VisualStudioPackages.ps1 is an easy way to both document and help developers install the necessary Visual Studio packages required to build libuv. Currently, they are:

MS Build
Visual C++ 2017 v141 toolset (x86,x64)
Standard Library Modules
Windows 10 SDK (10.0.14393.0)

@ctaggart I like Add-VisualStudioPackages.ps1, maybe rename to "Setup-VisualStudio2017", and add a fallback if you can't find vs_installershell.exe you can ask the user if xe wants to DL the BuildTools SKU which you can silently install.
Also if you land #1284 you won't need Update-ProjectFilesToVS2017.ps1 and then the changes in appveyor.yml are minimal.

Also vote for https://chromium-review.googlesource.com/c/456360/ then we get native VS2017 GYP support

P.S. IMHO you should squash  all these commits together, and force push

GitHub has a wonderful squash merge feature. I starred that googlesource issue. Not sure if that is a vote for it. Suave is still on libuv 1.9.1. I think this solution should work for it. I'm headed back to work on my projects. Please merge/amend/close this pull request as you see fit.

Can you please re-target this to v1.x? That's the current active branch, v1.x is the next major release branch. Thanks!

@saghul Sure.


@spec on find_one_and_update/4 says the function can return {:ok, nil}

find_one_and_update/4 has the following @spec:
...
@spec find_one_and_update(
          GenServer.server(),
          collection,
          BSON.document(),
          BSON.document(),
          Keyword.t()
        ) :: result(Mongo.FindAndModifyResult.t()) | {:ok, nil} # <~ here
  def find_one_and_update(topology_pid, coll, filter, update, opts \\ []) do
    _ = modifier_docs(update, :update)
...

Previously this returned nil if the document couldn't be found, but now upon not finding the doc the function returns:
{:ok,
 %Mongo.FindAndModifyResult{
   value: nil,
   matched_count: 0,
   upserted_id: nil,
   updated_existing: false
 }}

Is there any way it can return {:ok, nil} or is the spec incorrect?

The spec is wrong. It will always return the `%Mongo.FindAndModifyResult{}' struct. It was changed to support the mongo ecto package.

I just looked through the code again (you were quicker than me), and found it will never return {:ok, nil}
with {:ok, doc} <- issue_command(topology_pid, cmd, :write, opts) do
      {:ok,
       %Mongo.FindAndModifyResult{
         value: doc["value"],
         matched_count: doc["lastErrorObject"]["n"],
         updated_existing: doc["lastErrorObject"]["updatedExisting"],
         upserted_id: doc["lastErrorObject"]["upserted"]
       }}
    end

Another minor thing is that functions with the "result" type will never actually return :ok:
@type result(t) :: :ok | {:ok, t} | {:error, Mongo.Error.t()} | {:error, Mongo.WriteError.t()}

Thanks for reporting. To be honest, I never pay much attention to the specifications. It is therefore possible that some specs are outdated and no longer correct.

Another very minor thing is that @type initial_type :: :unknown | :single | :replica_set_no_primary | :sharded is never used


[C#] Grpc.Tools changes to support nullable reference types

A support to Grpc.Tools to support nullable reference types.
This should NOT BE MERGED until nullable reference types are supported in the protoc and gRPC C# plugin code generators.
See:

https://github.com/grpc/grpc/pull/33878
https://github.com/protocolbuffers/protobuf/pull/13218
https://github.com/protocolbuffers/protobuf/issues/6632
https://github.com/grpc/grpc/issues/20729

Grpc.Tools detects of <Nullable>enable</Nullable> is in the project file and adds the appropriate options to protoc and the plugin.
These can be overridden by setting the following properties to enable or disable:

gRPC_NullableReferenceTypes for the plugin
Protobuf_NullableReferenceTypes for protoc

Maybe just one property for both?
TODO:

~adding tests~ done
updating documentation (to do after NuGet package is published)

@jtattermusch @JamesNK for review
@jskeet FYI

I'm really looking forward to this being merged! Awesome to see :)


config: update the PD required-contexts

Signed-off-by: JmPotato<EMAIL_ADDRESS>https://github.com/ti-community-infra/configs/pull/524 tries to use the report-coverage as the final test result check to block a PR merging. But it turns out a skipped action status will also be treated as passed according to https://github.com/tikv/pd/pull/4638.
This PR makes all test chunks as required in master branch.

/ok-to-test

/merge
/unhold
@JmPotato, feel free to merge by /unhold


x/build: increase timeouts or reduce parallelism on darwin-arm-mg912baios builder?

There is a strange effect visible in this log on the darwin-arm-mg912baios builder.
The tests are running along fine for a while, and when they get to the (presumably CPU-intensive) hash/* tests they suddenly dropm from ~150s per test to ~19m per test.
The first couple of image tests are similarly slow, but then the builder seems to recover:
ok  	go/parser	89.266s
ok  	go/printer	93.493s
ok  	go/scanner	90.741s
ok  	go/token	91.229s
ok  	go/types	93.029s
ok  	hash	95.535s
lldb: running program
PASS
*** Test killed: ran too long (19m0s).
FAIL	hash/adler32	1145.074s
ok  	hash/crc32	1140.671s
ok  	hash/crc64	1139.541s
ok  	hash/fnv	1137.713s
ok  	html	1136.359s
ok  	html/template	1135.509s
ok  	image	1133.465s
ok  	image/color	1135.193s
ok  	image/draw	91.719s
ok  	image/gif	95.854s
ok  	image/jpeg	102.705s
ok  	image/png	102.427s

I wonder if that implies some sort of resource contention (perhaps a thermal limit?) between the tests — should we reduce the parallelism of that builder to decrease the likelihood of spurious timeouts?
CC @eliasnaur @steeve @bradfitz @dmitshur

Now we have a virtual corellium darwin/arm64 builder, the two iOS device builders could be retired. It means that we'll lose darwin/arm coverage, however. It's up to @steeve who runs the device builders and has a very popular gomobile app deployed.

I think reducing the parallelism is super fine.
We are looking into deprecating darwin/arm ourselves, although we are not there just yet. Most likely target is september with the release of iOS 13, which means we may be able to deprecate iOS 10, and arm32 with it. That said, we don't need the per-commit granularity, so it's completely fine if it runs like once a day or something, so that we don't discover something is wrong at release time.


buffer: Fix calculation of timekey stats

Which issue(s) this PR fixes:
The oldest_timekey stat in buffer is broken.
The current approach of using add_timekey and del_timekey to track the count of chunks in each timekey doesn't work as intended - the count is never decreased to zero because of complications in chunk creation, as a result the oldest_timekey stat is almost never updated after initial flush(es).
What this PR does / why we need it:
A simple and not-so-timely alternative, to perform recalculation in every flush cycle.
Signed-off-by: Ji-Ping Shen<EMAIL_ADDRESS>

Thanks! We will check the patch.
But buffer tests failed, so it seems to break backward compatibility.

Sorry. I confirmed this patch works before but forgot to merge...
Thanks for the patch!


[Fix]unified cancel method in coordinator

Proposed changes
Coordinator has two cancel method, with args and without args.
They should has the same behavior, so query queue cancel should be moved to cancel method with args.

run buildall

run buildall

run buildall


Stop dbeaver from autocreating *'s when working with a block quote

dBeaver 24.0.2
whenever I start a block quote with:
/*
and press enter, dBeaver automatically creates:
*
*/
and it automatically starts each subequent line with *.
how do I get dbeaver to stop this anoying behavior?
I want to be able to type /* followed by enter and have dbeaver do nothing except move my cursor to the next line.
thanks.

Thank you for sharing you use case.
If you print /*, then press Enter and delete the star, it will stop adding the start on the new lines.

Write /*
Press enter, dBeaver automatically creates:

/
3) Remove star in the middle, left  it this way
/
*/
4) Press any number of times Enter while the cursor is inside multiline comment - no additional stars appear

yes, you've already mentioned that I can manually remove the unwanted, unrequested, unneeded characters that dBeaver is making.
what you haven't answered is a way to get dBeaver to stop making them in the first place.
if all I cared about was deleting unwanted autocreated characters, I didn't need to open an incident here on github.

what you haven't answered is a way to get dBeaver to stop making them in the first place.

There is no such way now. I provided you a workaround.
Your issue is open.


Combine approx-knn with other features

Is your feature request related to a problem? Please describe.
We actually want ES queries to return both knn and usual ES-query results. Something like this - https://www.elastic.co/guide/en/elasticsearch/reference/master/knn-search.html#_combine_approximate_knn_with_other_features
I read on OpenSearch documentation but can't find anything similar.
Describe the solution you'd like
Can we adopt the similar solution like official ES?
Describe alternatives you've considered
We current make two queries and choose the best ones for our product. But we think using single query approach would be better.
Additional context
Add any other context or screenshots about the feature request here.

@vkc12uec I don't think so both results are returned separately in ES. This is what I saw in documentation.
This search finds the global top k = 5 vector matches, combines them with the matches from the match query, and finally returns the 10 top-scoring results. The knn and query matches are combined through a disjunction, as if you took a boolean or between them. The top k vector results represent the global nearest neighbors across all index shards.

To give more details:
the way k-NN works in OpenSearch is little different I explained same on this forum question: https://forum.opensearch.org/t/k-nn-multiple-field-search-in-opensearch/12521/5?u=navneet. You can check this out.
If you want to combine k-NN and non-k-nn results you can use bool query clause. If you need to  documents matching one or more wrapped queries, then you can use dis_max and put your K-NN and non-k-NN queries there.
Example of Bool Query:
{
    "query": {
        "bool": {
            "should": [
                {
                    "knn": {
                      "my_vector": { // vector field name
                        "vector": [2, 3, 5, 6],
                        "k": 2
                      }
                    }
                },
                {
                    "term": {
                        "passage_text": "welcome"
                    }
                }
            ]
        }
    }
}

I hope this ans your question.

I think it's a good idea. @vkc12uec care to provide some examples of current request/response vs. what you'd like them to be? I'll move this to the k-nn repo.

@dblock the feature is already supported with k-NN plugin.


Modify posted events to include resource and resourceInstance

Description
We need to ensure that app events posted to the /app endpoint are enriched with resource and resource instance
Task

Extend logic in AppCloudEventExtensions.cs - CreateEvent
Unit tests
QA
Manual test

Acceptance criteria

New cloud events that are registered from an app source include the resource and resource instance properties
New cloud events that are returned from the GET endpoint include the resource and resource instance properties
New cloude vents that are pushed to subscription endpoint include the resource and resource instance properties

Verified in AT.


Some external links don't behave as expected

Preflight Checklist

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

You must agree to search and the code of conduct. You must fill in this entire template. If you delete part/all or miss parts out your issue will be closed.
If you are technical, you should report bugs along the lines of https://marker.io/blog/how-to-write-bug-report. If you are not technical, we will make allowances, please try to make an effort to understand the process.
Describe the bug
If you add an external link to a diagram without the https:// prefix the link will redirect you on https://app.diagrams.net/www.google.com instead of the actual external site.
To Reproduce
Steps to reproduce the behavior:

Click on the + symbol on the top menu.
Select link
In the URL section paste: www.google.com
click on the added link

Expected behavior
Redirect to the external site.
Screenshots
If applicable, add screenshots to help explain your problem.

draw.io version (In the Help->About menu of the draw.io editor):

draw.io version 25.0.3

Desktop (please complete the following information):

OS: Windows
Browser Firefox
Browser Version 133.0 (64-bit)

I tested the problem in incognito/private mode with all browser extensions switched off, write "yes" below:

yes

https://kb.blackbaud.com/knowledgebase/Article/67574


How should method collisions be handled?

Right now, Wren lets you define the same method twice in the same class:
class Foo {
  foo() {}
  foo() {}
}

There's no error here and the last one wins. This seems less than optimal. :(
Detecting this case is kind of a pain, but I think we want to do it before we get stuck with having to allow duplicate definitions. We'll probably just need a buffer or map of signature strings in ClassCompiler for the methods that have been defined so far, and check in there for before a method is defined.

Raising some kind of redefinition error seems helpful to me.

a buffer of int could do it. containing the index of the signature in the methodNames array.

a buffer of int could do it. containing the index of the signature in the methodNames array.

Ah, right. I forgot we keep the signatures around already. Great idea!


Add background for the Search engine

Add the Backgraound Details on Engine SearchBar.
there is simple black screen in the search home engine.
we can add situtional background GIF related to weather conditions, it will w be more interactive n pleasing.
Describe alternatives you've considered
over here can cconsider just simple picture or video but this consider for GPU and memory.

We can make the page look better by making suitable background effects or colors.

I will give a better background image and a better color combination. which will enhance the user experience and improve the presentation


Automate Preparing Textures with Python

Description
Hello all,
I was getting quite tired of the tedious workflow with GIMP, so I decided to turn to automation to solve this.
I put the following script together, and I was hoping to get your input and help to finish it out.
I am trying to perform the following workflow to prepare textures for Terrain3D:

Pre-bake ambient occlusion
Create Albedo Height .dds
Create Normal Roughness .dds

My script is as follows:

Texture Preparing Automation Script
from PIL import Image
import os
import numpy as np
import imageio

def prebake_ambient_occlusion(input_folder, temp_folder, base_name):
    # Define file paths
    color_file = os.path.join(input_folder, f'{base_name}_1K-PNG_Color.png')
    ambient_occlusion_file = os.path.join(input_folder, f'{base_name}_1K-PNG_AmbientOcclusion.png')
    temp_file = os.path.join(temp_folder, f'{base_name}_ColorWithAmbientOcclusionPrebaked.png')

    # Ensure the temp folder exists
    os.makedirs(temp_folder, exist_ok=True)

    # Open the images
    color_image = Image.open(color_file).convert('RGBA')
    ambient_occlusion_image = Image.open(ambient_occlusion_file).convert('L')

    # Resize ambient occlusion to match color image dimensions
    ambient_occlusion_image = ambient_occlusion_image.resize(color_image.size, Image.LANCZOS)

    # Create a new image for the output
    output_image = Image.new('RGBA', color_image.size)

    # Multiply the images
    for x in range(color_image.width):
        for y in range(color_image.height):
            color_pixel = color_image.getpixel((x, y))
            ao_pixel = ambient_occlusion_image.getpixel((x, y))

            # Multiply color by ambient occlusion (considering AO as a factor of the RGB values)
            new_pixel = (
                int(color_pixel[0] * (ao_pixel / 255)),
                int(color_pixel[1] * (ao_pixel / 255)),
                int(color_pixel[2] * (ao_pixel / 255)),
                color_pixel[3]  # Preserve alpha channel
            )
            output_image.putpixel((x, y), new_pixel)

    # Save the output image to the temp folder
    output_image.save(temp_file)

    print(f"Pre-baked image saved to {temp_file}")

def create_albedo_height(temp_folder, input_folder, output_folder, base_name):
    # Define file paths
    pre_baked_file = os.path.join(temp_folder, f'{base_name}_ColorWithAmbientOcclusionPrebaked.png')
    displacement_file = os.path.join(input_folder, f'{base_name}_1K-PNG_Displacement.png')
    output_file = os.path.join(output_folder, f'{base_name.lower()}_albedo_height.dds')

    # Ensure the output folder exists
    os.makedirs(output_folder, exist_ok=True)

    # Open the images
    pre_baked_image = Image.open(pre_baked_file).convert('RGBA')
    displacement_image = Image.open(displacement_file).convert('L')

    # Resize displacement image to match pre-baked image dimensions
    displacement_image = displacement_image.resize(pre_baked_image.size, Image.LANCZOS)

    # Split pre-baked image into R, G, B channels
    r, g, b, _ = pre_baked_image.split()

    # Create new image with R, G, B, and displacement as alpha
    output_image = Image.merge('RGBA', (r, g, b, displacement_image))

    # Convert the output image to a numpy array
    output_image_np = np.array(output_image)

    # Save the output image as a DDS file with BC3 / DXT5 compression and mip maps
    imageio.imwrite(output_file, output_image_np, format='DDS', compression='bc3')

    print(f"Albedo with height map saved to {output_file}")

def create_normal_roughness(input_folder, output_folder, base_name, invert_roughness=False):
    # Define file paths
    normal_file = os.path.join(input_folder, f'{base_name}_1K-PNG_NormalGL.png')
    roughness_file = os.path.join(input_folder, f'{base_name}_1K-PNG_Roughness.png')
    output_file = os.path.join(output_folder, f'{base_name.lower()}_normal_roughness.dds')

    # Ensure the output folder exists
    os.makedirs(output_folder, exist_ok=True)

    # Open the images
    normal_image = Image.open(normal_file).convert('RGBA')
    roughness_image = Image.open(roughness_file).convert('L')

    # Optionally invert the roughness image
    if invert_roughness:
        roughness_image = Image.eval(roughness_image, lambda x: 255 - x)

    # Resize roughness image to match normal image dimensions
    roughness_image = roughness_image.resize(normal_image.size, Image.LANCZOS)

    # Split normal image into R, G, B channels
    r, g, b, _ = normal_image.split()

    # Create new image with R, G, B, and roughness as alpha
    output_image = Image.merge('RGBA', (r, g, b, roughness_image))

    # Convert the output image to a numpy array
    output_image_np = np.array(output_image)

    # Save the output image as a DDS file with BC3 / DXT5 compression and mip maps
    imageio.imwrite(output_file, output_image_np, format='DDS', compression='bc3')

    print(f"Normal with roughness map saved to {output_file}")

def main():
    input_folder = 'input'
    temp_folder = 'temp'
    output_folder = 'output'

    # Extract base name from one of the input files
    sample_file = os.listdir(input_folder)[0]
    base_name = sample_file.split('_')[0]

    # Step 1: Pre-bake ambient occlusion
    prebake_ambient_occlusion(input_folder, temp_folder, base_name)

    # Step 2: Create Albedo_Height image
    create_albedo_height(temp_folder, input_folder, output_folder, base_name)

    # Step 3: Create Normal_Roughness image
    create_normal_roughness(input_folder, output_folder, base_name, invert_roughness=False)

if __name__ == '__main__':
    main()

My project structure is as follows for anyone trying to emulate:
.
├── input
│   ├── Grass004_1K-PNG_AmbientOcclusion.png
│   ├── Grass004_1K-PNG_Color.png
│   ├── Grass004_1K-PNG_Displacement.png
│   ├── Grass004_1K-PNG_NormalGL.png
│   └── Grass004_1K-PNG_Roughness.png
├── output
│   ├── grass004_albedo_height_py.dds
│   └── grass004_normal_roughness_py.dds
├── README.md
├── src
│   └── main.py
└── temp
    └── Grass004_ColorWithAmbientOcclusionPrebaked.png

I think I'm about 90% of the way there, but somewhere in the process something must be going wrong, because when I try to use these outputs in Godot 4 with Terrain3D, I get the following error:
core/variant/variant_utility.cpp:1091 - Terrain3DTextureList::_update_texture_data: Texture ID 9 albedo format: 5 doesn't match first texture: 19

This happens whenever I place either output file in the respective albedo or normal texture slot in the editor.

I was getting quite tired of the tedious workflow with GIMP

There's a built in tool in the tools menu.

Terrain3DTextureList::_update_texture_data: Texture ID 9 albedo format: 5 doesn't match first texture: 19

The message is quite explicit: The first texture you have in the list is format 19. The texture you just added as ID 9 is format 5. They don't match. Either use the old format or the new format, or any other format, as long as they are all identical. These specifications are documented.
If your DDS files are coming in as format 5, they aren't dds files.
Most photo editing apps will open up your output files so you can see what's in them.

There's a built in tool in the tools menu.

My apologies I was not aware of that. I did not see it in the documentation here: https://terrain3d.readthedocs.io/en/stable/docs/texture_prep.html. I think it would be helpful for first-time users of the plugin to have info on the tool and how to use it in the texture prep section.
I'm trying to find the tool myself right now and I can't find it... could you please tell me where it is and how to use it?

Switch to the latest version of the documentation.
It may only be in the nightly builds, and in the next version.

It's in 0.9.1 in the tools menu at the top of your viewport. It's been out since February.

It's in 0.9.1 in the tools menu at the top of your viewport. It's been out since February.

Great I found it, thank you!

Documentation added in https://github.com/TokisanGames/Terrain3D/commit/eacd604289dc1b3107da2abf0c4c83d6b4bea03e, https://github.com/TokisanGames/Terrain3D/commit/e888deb46a6f73fc9ee40a0f9b43998a4ab83e3b, https://github.com/TokisanGames/Terrain3D/commit/75adb4e928b6fc006fe6838059d05c8060da7733


cartesian or local cartesian for 3D classification

I just finished reading the SplineCNN paper. Can you suggest, what kind of coordinate normalization is better for 3D classification of objects using SplineCNN, when a 3D triangular mesh is given - the cartesian (where the distances from a vertex to all other points of the 3D mesh are normalized to [0,1]) or the local cartesian (when the distances are normalized by dividing by the maximum vertex-vertex distance in a 1-hop neighborhood - am I correct?) ? What can be the advantages and downsides of these approaches for 3D object classification? I think that there might be different behaviour when a CNN is trained on a fine-grained mesh, and then applied to a coarser triangular mesh, or vice versa. One of these normalization approaches might generalize better... What do you think?
Sorry for posting this as an "issue"

Hi,
this is a really interesting question. In all my experiments, LocalCartesian performed worse, but I actually never played around with generalization to coarser triangular meshes and vice versa. My guess is that these results would still hold, because the choice of the transform does not change the fact that the model needs to generalize to patterns with higher curvatures it never saw before during training.
A better way to solve this could be to append the 2-hop neighborhoods to your edge indices (as long as neighboring nodes lie in a specific defined radius).


Fixes warning in system admin section + color highlighting of warning and errors

Hello,
This pull request fixes the warning message displayed in administration when setting the "path to msbuild" to the directory containing msbuild.exe. Previously, you had to fill this field with the full path to msbuild.exe while Jenkins expects it to be the directory containing the executable.
This PR makes the plugin work when only the directory is set and also keep working if the full path to msbuild.exe is set for backward compatibility purpose.
Moreover, it also add color to the console log for warning and error messages generated by msbuild.

@marshall777 Do you want to take over as maintainer of this plugin?

@daniel-beck Yes, I already asked for committing rights on the jenkins mailing list

@marshall777 Looks like I missed that thread. Thanks.


Filter K8s Resources from CRD Generation

This pr filters out non-CRD's (K8s resources such as Pods and Deployments). This resolves #371 (which we are running into too) where if a controller watches a K8s resource, that resource is included in CRD's on generation (which makes K8s unhappy).

If I understand this correctly, this filters out all types that come from the Kubernetes assembly, right?


[openexr] Update to 3.1.5

Describe the pull request

What does your PR fix?
Fixes #...
Note: Duplicate of #20957

Which triplets are supported/not supported? Have you updated the CI baseline?
<all / linux, windows, ...>, <Yes/No>

Does your PR follow the maintainer guide?
Your answer

If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?
<Yes / I am still working on this PR>

If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/

I don't see an official FindOpenEXR.cmake in CMake. So what is the wrapper targeting at? Each downstream may have it is own variant of the find module. Differences must be handled in downstream ports. Port openexr must not accumulate dependencies on downstream find module implementations.

To limit downstream patching, would be a transitional option to:

add forwarding headers from openexr to imath (in particular for half.h)
add a dependency to imath config to openexr config?

To limit downstream patching, would be a transitional option to:

add forwarding headers from openexr to imath (in particular for half.h)

add a dependency on imath config to openexr config?

... perhaps implemented behind an opt-in openexr[imath-transition] feature.

@dg0yt Seems like you're more familiar with this than me. Feel free to open your own PR to update openexr. Honestly, I don't want to work on another OpenSSL-like patch thing.

@Thomas1664 Is work still being done for this PR?

@Thomas1664 Is work still being done for this PR?

No. I don't have time for this.

Closing this PR, please reopen if you continue this work.


Reduce aggressiveness of masking logic

Fixes #1024. Usernames shorter than 5 characters (i.e., 4 or less) will no longer be masked out.
Longer term, I'd like to see zero masking logic here, all of it really belongs in vscode-extension-telemetry. I opened https://github.com/microsoft/vscode-extension-telemetry/issues/80 to get the custom values-to-mask feature added there.

I'm going to switch this to a draft, let's see if we can get https://github.com/microsoft/vscode-extension-telemetry/issues/80 and https://github.com/microsoft/vscode-extension-telemetry/issues/81 instead of needing to do this ourselves...


Roll engine bb01cb7faf26..110c1c9adf0f (35 commits)

https://github.com/flutter/engine/compare/bb01cb7faf26...110c1c9adf0f
git log bb01cb7faf26..110c1c9adf0f --first-parent --oneline
2020-02-18<EMAIL_ADDRESS>Lift restriction that embedders may not trample the render thread OpenGL context in composition callbacks. (flutter/engine#16653)
2020-02-18<EMAIL_ADDRESS>update hash code logic on the web (flutter/engine#16624)
2020-02-18<EMAIL_ADDRESS>[web] Skipping failing edge tests (flutter/engine#16626)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/skia 78b471760dd9..c1bb9cba16be (1 commits) (flutter/engine#16662)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/dart a314cff6ee03..999eeea5a3ff (15 commits) (flutter/engine#16661)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/skia 4af17e434cdc..78b471760dd9 (1 commits) (flutter/engine#16660)
2020-02-18<EMAIL_ADDRESS>Roll fuchsia/sdk/core/linux-amd64 from Uc8XS... to 2W9Xr... (flutter/engine#16659)
2020-02-18<EMAIL_ADDRESS>Roll fuchsia/sdk/core/mac-amd64 from PGe1A... to 06MUz... (flutter/engine#16658)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/dart b20c35c7d90f..a314cff6ee03 (4 commits) (flutter/engine#16657)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/skia 9dbb98007b7b..4af17e434cdc (2 commits) (flutter/engine#16656)
2020-02-18<EMAIL_ADDRESS>Roll src/third_party/skia 3c4f3c178ade..9dbb98007b7b (2 commits) (flutter/engine#16655)
2020-02-17<EMAIL_ADDRESS>Roll fuchsia/sdk/core/linux-amd64 from m7Xt4... to Uc8XS... (flutter/engine#16652)
2020-02-17<EMAIL_ADDRESS>Roll fuchsia/sdk/core/mac-amd64 from FS4mm... to PGe1A... (flutter/engine#16651)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/skia 706f6b4069b1..3c4f3c178ade (1 commits) (flutter/engine#16650)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/skia c65cd5c8dba9..706f6b4069b1 (1 commits) (flutter/engine#16649)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/dart 7ed1690b4ed6..b20c35c7d90f (9 commits) (flutter/engine#16648)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/dart 374c9c448fdc..7ed1690b4ed6 (1 commits) (flutter/engine#16647)
2020-02-17<EMAIL_ADDRESS>Roll fuchsia/sdk/core/mac-amd64 from oHa-O... to FS4mm... (flutter/engine#16646)
2020-02-17<EMAIL_ADDRESS>Roll fuchsia/sdk/core/linux-amd64 from CNbNp... to m7Xt4... (flutter/engine#16645)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/skia 660a73ada09d..c65cd5c8dba9 (2 commits) (flutter/engine#16644)
2020-02-17<EMAIL_ADDRESS>Roll src/third_party/skia bfe80bb552b0..660a73ada09d (1 commits) (flutter/engine#16643)
2020-02-16<EMAIL_ADDRESS>Roll src/third_party/skia<PHONE_NUMBER>ca..bfe80bb552b0 (1 commits) (flutter/engine#16642)
2020-02-16<EMAIL_ADDRESS>Roll src/third_party/dart 6ae9dedc6058..374c9c448fdc (1 commits) (flutter/engine#16641)
2020-02-16<EMAIL_ADDRESS>Roll src/third_party/skia a27ca5566533..8935981317ca (1 commits) (flutter/engine#16640)
2020-02-16<EMAIL_ADDRESS>Roll fuchsia/sdk/core/linux-amd64 from Dx_qu... to CNbNp... (flutter/engine#16639)
2020-02-16<EMAIL_ADDRESS>Roll src/third_party/skia 2c5ee187245a..a27ca5566533 (1 commits) (flutter/engine#16638)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/skia 81e84a6e7f03..2c5ee187245a (1 commits) (flutter/engine#16637)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/skia b7ceaa8efd2b..81e84a6e7f03 (2 commits) (flutter/engine#16636)
2020-02-15<EMAIL_ADDRESS>Roll fuchsia/sdk/core/linux-amd64 from J-_s6... to Dx_qu... (flutter/engine#16635)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/dart 361f881b8edc..6ae9dedc6058 (1 commits) (flutter/engine#16634)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/skia 05676f7bc238..b7ceaa8efd2b (1 commits) (flutter/engine#16633)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/dart 11ae06e988de..361f881b8edc (7 commits) (flutter/engine#16632)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/skia 55f040bcb943..05676f7bc238 (47 commits) (flutter/engine#16631)
2020-02-15<EMAIL_ADDRESS>Roll src/third_party/dart edd64e6d5c79..11ae06e988de (44 commits) (flutter/engine#16628)
2020-02-15<EMAIL_ADDRESS>Kick LUCI (flutter/engine#16629)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
...

Commit queue failed; closing this roll.


No images in the pdf file

I have a markup document that has 'mermaid' diagrams.
I use 'compile-mermaid-markdown-action' to produce 'png' image files.
The '.md' files are in a 'documentation' folder.
The '.png' files are in a 'documentation/images' folder.
When I run 'markdown-to-pdf' the generated 'html' files work (they have a link to the 'images' folder png files.
But, the pdf file doesn't contain any images.
The link sin the '.md' file are like:
I use the following configuration:
- name: Generate PDF Document
uses: baileyjm02/markdown-to-pdf@v1
with:
input_dir: documentation
output_dir: documentation
images_dir: documentation
build_html: true

Hey @keith-moore-bluefruit, images_dir should be the path used to import images. Could you try using one of the following and see if that fixes your issue, thanks!
If you import using absolute URLs
images_dir: documentation/images

or if you import using a relative path something like below:
images_dir: ./images

If none of these work could you please invite me to the repository so I can review and offer a fix? Thank you.

Hi
Still no luck, I have given you access to see what I am doing wrong.
Thanks - Keith
From: Bailey Matthews @.>
Sent: 27 May 2021 16:12
To: BaileyJM02/markdown-to-pdf @.>
Cc: Keith Moore @.>; Mention @.>
Subject: Re: [BaileyJM02/markdown-to-pdf] No images in the pdf file (#17)
Hey @keith-moore-bluefruithttps://github.com/keith-moore-bluefruit, images_dir should be the path used to import images. Could you try using one of the following and see if that fixes your issue, thanks!
If you import using absolute URLs
images_dir: documentation/images
or if you import using a relative path something like below:
images_dir: ./images
If none of these work could you please invite me to the repository so I can review and offer a fix? Thank you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/BaileyJM02/markdown-to-pdf/issues/17#issuecomment-849716800, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAU5KAL4JGABO2BDK6AVNTTTPZONXANCNFSM45E55TWQ.

Hi! I faced the same issue but unfortunately I cannot provide an access to the repo. Images are located in ./images/ directory. In my markdown files I refer to images with a relative path like images/**.png
I tried:

images_dir: images
images_dir: /images/
images_dir: .
images_dir: ./images

Maybe it will help fiw the issue.

Hi, I initially had the  same issue, but the following config fixed it for me :)
Readme.md is in the root of repo, and the file that I want to convert.
Images are in a folder called "Screenshots"
In the Readme the images are embedded like this:
![Image of Main Screen](Screenshots/Main.png?raw=true "Main Screen")
Working config:
          input_dir: ./
          images_dir: "./Screenshots"
          image_import: "Screenshots"

What @Dak0r wrote is correct!
images_dir is the absolute path of the images folder (from the root of the directory).
image_import is how you write the path to the image in the markdown file.
Both keys must be implemented for image embedding to work!
My example that worked:
Image in path tasks/md/images/test.jpg.
Markdown file in path tasks/md/test.md:

Github Action configuration:
...
input_path: 'tasks/md'
images_dir: 'tasks/md/images'
image_import: 'images'
...

What @Dak0r wrote is correct!
images_dir is the absolute path of the images folder (from the root of the directory). image_import is how you write the path to the image in the markdown file.
Both keys must be implemented for image embedding to work!
My example that worked:
Image in path tasks/md/images/test.jpg.
Markdown file in path tasks/md/test.md:

Github Action configuration:
...
input_path: 'tasks/md'
images_dir: 'tasks/md/images'
image_import: 'images'
...

Does it have to be in (single/double) quotes for it to work properly?

And my images are rendered in HTML format, similar like yours

  <img src="./images/<name>.png" width="60%" />

@Sp0ngy the details of my issue are in #54
If you could kindly have a look at it and see if there's a solution, that'll be perfect

@Sp0ngy the details of my issue are in #54
If you could kindly have a look at it and see if there's a solution to the issue, that'll be perfect

@cr2007 Jinja just fills your markdown files, if you use something like this:
| ID | Name | Description |
|----|------|-------------|
{%- for uid, u in users.items() %}
| {{ u.id }} | {{ u.name }} | {{ u.description }} |
{%- endfor %}

The Jinja loads the parameters and creates a filled out markdown file. Read more here.
Using Jinja will not solve your issue. You can give me access, I can have quick look on the action and the repo structure, but if the main dev of this action did not find anything, I am afraid I won't either.


An AttributeError message in base_layer.py

In the definition of input_shape(self), the other half of the double quote ”“ is missing in the AttributeError message

It looks like your PR relates to the Keras component. Please submit it to the github.com/keras-team/keras repository instead. Thankyou.
@fchollet, @qlzh727


transparent icon cannot be dragged

transparent icon cannot be dragged, only click on the non-transparent area can drag, is there any way？

This works like this as far as I can recall (Mac OS X 10.5).


Flood of HomeKit Alarm Notifications After Manual Mode Change

I’ve recently noticed an issue where I’m getting flooded with mode change alarm state push notifications from HomeKit, even though the Homebridge logs only show one mode change. This seems to be occurring at night which aligns with the only time I really manually adjust the alarm I suppose, and the only fix I’ve found is to restart Homebridge and reboot the Envisalink Duo device.
Have you encountered this issue before or have any suggestions for resolving it? It only seems to occur after manually adjusting the mode change switch exposed by the Envisalink Ademco plugin in the Home app. It’s happened two nights in a row, resulting in everyone in the house receiving dozens and dozens of push notifications in a short period of time.
Homebridge 1.8.5  | UI 4.6.5
Node.js v22.12.0
macOS sequoia 15.2
Envisakink ademco plugin 2.0.15
Envisalink Duo Firmware Version: 01.00.100A
Def keeps folks on their toes!

Hmm... I never encountered this prior. A few questions/recommendation

From what mode are you going from? Disarm to Stay? Disarm to Night?
Are you indicating that this happens when using the home's alarm control (tile)?
Does this happen immediately, after changing the alarm mode? If that is the case, I would turn on debug mode in Homebridge this will provide a lot of data about what the plug-in is receiving.

What mode are you switching from? Disarm to Stay? Disarm to Night?
• Disarm to Night. This morning, I noticed the issue when I switched from Night to Off, then from Off to Night, and back to Off. I couldn’t get it to trigger, so at the very least, the behavior seems non-deterministic.
Are you saying this happens when using the alarm control tile in the Home app?
• Yes.

Does this happen immediately after changing the alarm mode? If so, I recommend turning on debug mode in Homebridge. This will provide detailed logs of what the plugin is receiving.
• Thanks, I’ll do that! It’s worth mentioning that I’m running Homebridge on a pretty heavily tasked Intel Mac mini. I’m wondering if this could be a memory race condition that occurs when Homebridge hasn’t been restarted for a while.
Just dawned on me that for over a year, I had a cron job restarting Homebridge hourly during daylight hours to keep local devices connected more reliably. I found some wemo WiFi lights would disconnect if I didn’t do this. Ironically, I stopped doing the restarting just a day or so ago which is also when this behavior started.
I only changed it because when Homebridge restarts, it seems to sync the current mode to my Apple TV, and at night while watching a movie, I got tired of seeing the brief pop-up and thought I could skip the hourly restarts. But this is def worse.
I’ll enable debug mode, skip the hourly restarts until tomorrow, and check the logs tonight. Then I’ll re-enable the hourly restarts tomorrow, with a break during evening hours when I’m watching TV. My sense is that the Mac mini is overworked, gets “cranky”, and starts having issues.

I would also review your panel for night mode. Normally, the NIGHT is "Arm-Instant (Zero Delay-Stay)," similar to the STAY mode but without the entry delay feature. It is usually associated with NIGHT STAY, which doesn't get reported correctly (just report as stay), so the plug-in has to use virtual key panel text as an indicator of night mode. So, I would also confirm that your keypad is reading night and not flipping back and forth...
Haven't had personal experience with Wemo devices, but anytime you have to restart something hourly, it bad sign that the fundamentals of the integration are working correctly.

Since I stopped restarting Homebridge hourly I haven’t experienced any issues. I also verified that Night is correctly setting Night-Stay without flipping states. I’m attributing the push issues to an overworked, older machine that was likely overloaded and didn’t benefit from such frequent restarts. Thanks so much for all the support. Your plugin has been a very huge quality of life upgrade for my family. 🙇

Awesome glad you got it resolved.


MODE-1399 Added unit test to check configuration

Based on errors reported by other developers, I added a unit test that was failing locally for the developer.
However, the test passed for me (in my IDE and running a full build).

Merged into the '3.x' branch.


Create security mask voice hailing sound effect.

About the PR

Added an action for security gas masks that triggers hailing sound effects with a robotic voice. The sound effects are positional and relative to the wearer.
Why / Balance

For security it's helpful to tell crew to stop and surrender without having to type something in text, ie during chases.
Media

see credits.txt for the source of the sound effects. The .ogg sound effects have been obtained from TGSTATION on Github. They are licensed under AGPL.
Requirements

[X] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

add: a robo-voice hail action to security gas masks for hailing potential suspects.

Summary by CodeRabbit

New Features

Introduced a hailing system allowing players to communicate actions audibly within the game.
Added a new entity, ActionHailer, enabling quick communication among players using the security gas mask.
Implemented a networked component to manage hailing actions, enhancing player interactions.

Documentation

Added a credits file to acknowledge the source of audio resources used in the hailing system.

also it would be nice for it to make the wearer say those things as well as text

some sounds I made
hailer.zip

Requested code changes:

I will improve the credits and code style based on the provided comments.
I will also make the hailers write their messages in proximity chat too, eventhough someone slightly out of FOV may not see them. (got any tips or ways to make proximity reach further? Maybe I should use the "!!!" shout method?)
Maybe there is a way to increase the audible range of the hailer, because it is indeed not loud if someone uses it slightly out of a person's FOV. (got any tips on how to increase the audible range of these sfx?)
I will also create an activation wait timer so the hailer cannot be spammed but there is a second or two between each hail at minimum.

Give me a week max to commit this.
About the sound quality
Maybe the hailer sounds you made sound better if you lower their pitch and add freeware filters over them. Otherwise my conclusion is that the sounds I provided sound better despite their flaws. A few rounds of playthroughs and people would familiarize themselves quickly with these hailing sounds despite the lack of perfect clarity.
I understand the desire for clarity, ie if sec chases someone with this hailer, it may be just a bit silly to expect new crew members to recognize the sound as a sign to stop, but at the same time this is SS14. A game where good or bad actions performed on people are showcased with silly quick action bars without many decent indications. A game where I can hardly spot severely injured person from a healthy one, except for if I carry a health scanner or if they're bleeding. I can't even see what people hold in their hands without having to examine and then strip examine them from up very close.
I'd say that the quality of the sound effects are on the same level as the rest of SS14's mechanics. In my opinion nitpicking this PR for the adio quality feels like focusing on a single imperfect grain of sand in a huge desert filled with imperfect grains. The sounds I provided just sound more badass and deeper, more fun, suiting and entertaining. Of course the choice is yours which final SFX to use or replace.
Emaggable security gas mask
TGStation also has this feature where if you emag this gas mask it will start using "emagged" audio files, in TGStation it is an espeak that just curses and says vulgar unprofessional stuff. I can implement that feature too, but that would come last.

No clue what the attributions.yml name is for gplv3

I will heed help with making the mask messages appear in either text chat or just ontop of the character to read. Got any useful examples or references to how this can be achieved?

supermatter and intercom are items that speak that might help you

Done.

@whateverusername0

@starwolfy can you provide media of sort? like show the way it works in game

@starwolfy can you provide media of sort? like show the way it works in game

https://github.com/user-attachments/assets/03763f7d-9047-428c-b9e1-3d955170e390


[FLINK-24763][fs-connector] LimitableReader should swallow exception when reached limit

What is the purpose of the change
Exceptions in ParquetFileSystemITCase.testLimitableBulkFormat
2021-11-03T22:10:11.5215786Z Nov 03 22:10:11 Caused by: java.lang.IllegalStateException: Trying to access closed classloader. Please check if you store classloaders directly or indirectly in static fields. If the stacktrace suggests that the leak occurs in a third party library and cannot be fixed immediately, you can disable this check with the configuration 'classloader.check-leaked-classloader'.
2021-11-03T22:10:11.5217523Z Nov 03 22:10:11 	at org.apache.flink.runtime.execution.librarycache.FlinkUserCodeClassLoaders$SafetyNetWrapperClassLoader.ensureInner(FlinkUserCodeClassLoaders.java:164)
2021-11-03T22:10:11.5218577Z Nov 03 22:10:11 	at org.apache.flink.runtime.execution.librarycache.FlinkUserCodeClassLoaders$SafetyNetWrapperClassLoader.getResource(FlinkUserCodeClassLoaders.java:183)
2021-11-03T22:10:11.5219513Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.getResource(Configuration.java:2780)
2021-11-03T22:10:11.5220068Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.getStreamReader(Configuration.java:3036)
2021-11-03T22:10:11.5220721Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:2995)
2021-11-03T22:10:11.5221505Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:2968)
2021-11-03T22:10:11.5222138Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:2848)
2021-11-03T22:10:11.5222733Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.get(Configuration.java:1200)
2021-11-03T22:10:11.5223230Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.getTrimmed(Configuration.java:1254)
2021-11-03T22:10:11.5223707Z Nov 03 22:10:11 	at org.apache.hadoop.conf.Configuration.getInt(Configuration.java:1479)
2021-11-03T22:10:11.5224231Z Nov 03 22:10:11 	at org.apache.parquet.hadoop.codec.SnappyCodec.createInputStream(SnappyCodec.java:75)
2021-11-03T22:10:11.5224772Z Nov 03 22:10:11 	at org.apache.parquet.hadoop.CodecFactory$HeapBytesDecompressor.decompress(CodecFactory.java:109)
2021-11-03T22:10:11.5225418Z Nov 03 22:10:11 	at org.apache.parquet.hadoop.ColumnChunkPageReadStore$ColumnChunkPageReader.readDictionaryPage(ColumnChunkPageReadStore.java:196)
2021-11-03T22:10:11.5226286Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.vector.reader.AbstractColumnReader.<init>(AbstractColumnReader.java:110)
2021-11-03T22:10:11.5226876Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.vector.reader.IntColumnReader.<init>(IntColumnReader.java:33)
2021-11-03T22:10:11.5227492Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.vector.ParquetSplitReaderUtil.createColumnReader(ParquetSplitReaderUtil.java:280)
2021-11-03T22:10:11.5228185Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.ParquetVectorizedInputFormat$ParquetReader.readNextRowGroup(ParquetVectorizedInputFormat.java:412)
2021-11-03T22:10:11.5228961Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.ParquetVectorizedInputFormat$ParquetReader.nextBatch(ParquetVectorizedInputFormat.java:381)
2021-11-03T22:10:11.5229660Z Nov 03 22:10:11 	at org.apache.flink.formats.parquet.ParquetVectorizedInputFormat$ParquetReader.readBatch(ParquetVectorizedInputFormat.java:358)
2021-11-03T22:10:11.5230333Z Nov 03 22:10:11 	at org.apache.flink.table.filesystem.LimitableBulkFormat$LimitableReader.readBatch(LimitableBulkFormat.java:108)
2021-11-03T22:10:11.5230939Z Nov 03 22:10:11 	at org.apache.flink.connector.file.src.impl.FileSourceSplitReader.fetch(FileSourceSplitReader.java:67)
2021-11-03T22:10:11.5231515Z Nov 03 22:10:11 	at org.apache.flink.connector.base.source.reader.fetcher.FetchTask.run(FetchTask.java:58)
2021-11-03T22:10:11.5232095Z Nov 03 22:10:11 	at org.apache.flink.connector.base.source.reader.fetcher.SplitFetcher.runOnce(SplitFetcher.java:142)
2021-11-03T22:10:11.5232614Z Nov 03 22:10:11 	... 6 more

The reason is the early termination of iterator in the LimitableIterator.
A LimitableIterator is over, it has reached the limit, so it return null. Then the reader thread finds that there is no split next, so it thinks it has finished reading.
But the fetcher thread dose not know, the current split has remaining records.  The fetcher still read records from hadoop files, but the class loader is closed.
Therefore, we can solve this: when the iterator thinks it is over, even if the reader encounters an exception, we should exit normally.
Brief change log
Swallow exceptions in LimitableReader.readBatch.
Verifying this change
(Please pick either of the following options)
LimitableBulkFormatTest.testSwallowExceptionWhenLimited.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)

Btw I'm fine to disable the test for the time being and create a follow-up blocker ticket to re-enable it. Alternatively, you can push your current fix with some more comments and create a follow-up to cleanup the threading model.

Btw I'm fine to disable the test for the time being and create a follow-up blocker ticket to re-enable it. Alternatively, you can push your current fix with some more comments and create a follow-up to cleanup the threading model.

Thanks, I will merge this first.
If the problem still recurs, I will disable the test for the time being and create a follow-up blocker ticket to re-enable it.


K8SPXC-572 Add defaults to recover

 ❨?❩

Test name
Status

big-data
passed

storage
passed

upgrade-haproxy
passed

recreate
passed

haproxy
passed

scaling
passed

init-deploy
passed

self-healing
failed

scaling-proxysql
passed

restore-to-encrypted-cluster
passed

security-context
passed

upgrade-proxysql
passed

limits
passed

monitoring-2-0
passed

smart-update
passed

demand-backup
passed

affinity
passed

self-healing-advanced
passed

one-pod
passed

auto-tuning
passed

operator-self-healing
passed

proxysql-sidecar-res-limits
passed

pitr
passed

users
passed

upgrade-consistency
passed

demand-backup-encrypted-with-tls
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

scheduled-backup
failed

Test name
Status

big-data
passed

storage
passed

upgrade-haproxy
passed

recreate
passed

haproxy
passed

scaling
passed

init-deploy
passed

self-healing
failed

scaling-proxysql
passed

restore-to-encrypted-cluster
passed

security-context
passed

upgrade-proxysql
passed

limits
passed

monitoring-2-0
passed

smart-update
passed

demand-backup
passed

affinity
passed

self-healing-advanced
passed

one-pod
passed

auto-tuning
passed

operator-self-healing
passed

proxysql-sidecar-res-limits
passed

pitr
passed

users
passed

upgrade-consistency
passed

demand-backup-encrypted-with-tls
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

scheduled-backup
failed


Add [skip-dot-release] feature

Changes

:gift: Adds the ability for one to add [skip-dot-release] to a commit message to skip that commit when calculating if a dot release needs to be built

Fixes: https://github.com/knative/test-infra/issues/3386

/lgtm
/approve

/cherry-pick release-1.5

/cherry-pick release-1.4

/cherry-pick release-1.3

/cherry-pick release-1.2


Add env variable for MAX_IN_MEMORY_DATASET_SIZE_IN_BYTES

Add env variable for MAX_IN_MEMORY_DATASET_SIZE_IN_BYTES.
This will allow to turn off default behavior: loading in memory (and not caching) small datasets.
Fix #2387.

Thank you for clarifying the precedence, @albertvillanova
Isn't it typically the case where env var have the highest precedence? In my understanding the point of env vars is to be able to override software w/o needing to touch the code. Please correct me if this is not so in the general case.

Hi @stas00,
Well, I'm not an expert on this topic, but the precedence hierarchy I have normally found is from higher to lower:

command line parameters
env vars
config files
So yes, normally env vars have precedence over configuration files.

Anyway, for Datasets, there are no configuration files. The in-memory config is set from default values or env vars (which have precedence over default values). But this is done at import.
However, once the library is imported, the user can modify the in-memory config, and this will have precedence over the rest of mechanisms (which work only at import).

In my limited experience env vars are typically above cmd line args, so that one can override scripts with cmd lines using env vars, but usually one then uses env vars inside cmd line args, so it's loud and clear.
For example specifying a specific gpu number on a command line will depend on CUDA_VISIBLE_DEVICES so gpu0 will be different if someone sets CUDA_VISIBLE_DEVICES=2,3 vs  `CUDA_VISIBLE_DEVICES=0,1.

However, once the library is imported, the user can modify the in-memory config, and this will have precedence over the rest of mechanisms (which take place only at import).

And this is exactly the problem we are trying to solve here. For a good reason HF examples don't want to use keep_in_memory=False, and they may choose to now set datasets.config.MAX_IN_MEMORY_DATASET_SIZE_IN_BYTES and which means we again can't override it via env var.

oops, sorry, didn't think earlier - do we need to prefix this with HF_DATASETS or HF_ like all the other env vars? or is it long enough already to be unique - it's just not telling the user in the config file what projet this variable is for...

You're right, I just opened https://github.com/huggingface/datasets/pull/2409


Fix multiple definitions for GCC10

Fix https://github.com/rednex/rgbds/issues/503
Changes

Declare depth and colors with extern
Update the header includes

I'm curious as to why that didn't break prior to GCC 10; do you have any insight on this?

Suppose two different files say int x; in the global scope. (Or two different files include a header that does, which is the same.)
In the times when dinosaurs walked on Earth and C was just being defined, this was very common, and it remained so for decades. So what happened was that the compiler found these variables, and, knowing that many files could be sharing them, placed them in a section for common symbols instead of just declaring them as data. (There's a special section in the ELF format for "common" for this very reason, for instance.) If two or more identical symbols with identical properties were found while linking, the linker would emit only one of them.
This is a bad idea for many reasons, and ultimately only old languages like C and Fortran were even doing this at all. GCC 10 switches the default for C from -fcommon to -fno-common; the latter causes it to place global variables in regular data sections and with regular symbols pointing to them. Using regular symbols means that you can't have two of them with the same name, meaning that our example with two files defining int x; would fail to link.
The correct form is to do extern int x; (which doesn't define anything at all) in headers, and to do int x; exactly once in one of the files. This is what -fno-common makes mandatory, and what GCC 10 will therefore enforce by default.

This makes the code more strictly standard-conforming. C and C++ both require that these variables are only defined once. I admit that I've written code that abuses this without realizing it before, and I should probably get around to using -fno-common.


Issues in training the model

python train.py
Loading Data...
found stat file: ./etc/children-stats.npz
found stat file: ./etc/adult-stats.npz
Loading Data Done.
d1: [None, 36, 512, 32]
d2: [None, 18, 256, 64]
d3: [None, 9, 128, 128]
d4: [None, 9, 128, 64]
[None, 1, 128, 4]
u1.shape :[None, 9, 128, 64]
c1 shape: (?, 9, 128, 4)
u1_concat.shape :[None, 9, 128, 68]
u2.shape :[None, 9, 128, 128]
u3.shape :[None, 18, 256, 64]
u4.shape :[None, 36, 512, 32]
u4_concat.shape :[None, 36, 512, 36]
u5.shape :[None, 36, 512, 1]
d1: [None, 36, 512, 32]
d2: [None, 18, 256, 64]
d3: [None, 9, 128, 128]
d4: [None, 9, 128, 64]
[None, 1, 128, 4]
u1.shape :[None, 9, 128, 64]
c1 shape: (?, 9, 128, 4)
u1_concat.shape :[None, 9, 128, 68]
u2.shape :[None, 9, 128, 128]
u3.shape :[None, 18, 256, 64]
u4.shape :[None, 36, 512, 32]
u4_concat.shape :[None, 36, 512, 36]
u5.shape :[None, 36, 512, 1]
d1: [None, 36, 512, 32]
d2: [None, 18, 256, 64]
d3: [None, 9, 128, 128]
d4: [None, 9, 128, 64]
[None, 1, 128, 4]
u1.shape :[None, 9, 128, 64]
c1 shape: (?, 9, 128, 4)
u1_concat.shape :[None, 9, 128, 68]
u2.shape :[None, 9, 128, 128]
u3.shape :[None, 18, 256, 64]
u4.shape :[None, 36, 512, 32]
u4_concat.shape :[None, 36, 512, 36]
u5.shape :[None, 36, 512, 1]
domain_classifier_d1: (?, 8, 512, 8)
domain_classifier_d1_p: (?, 4, 256, 8)
domain_classifier_d12: (?, 4, 256, 16)
domain_classifier_d2_p: (?, 2, 128, 16)
domain_classifier_d3: (?, 2, 128, 32)
domain_classifier_d3_p: (?, 1, 64, 32)
domain_classifier_d4: (?, 1, 64, 16)
domain_classifier_d4_p: (?, 1, 32, 16)
domain_classifier_d5: (?, 1, 32, 4)
domain_classifier_d5_p: (?, 1, 16, 4)
classifier_output: (?, 1, 1, 4)
domain_classifier_d1: (?, 8, 512, 8)
domain_classifier_d1_p: (?, 4, 256, 8)
domain_classifier_d12: (?, 4, 256, 16)
domain_classifier_d2_p: (?, 2, 128, 16)
domain_classifier_d3: (?, 2, 128, 32)
domain_classifier_d3_p: (?, 1, 64, 32)
domain_classifier_d4: (?, 1, 64, 16)
domain_classifier_d4_p: (?, 1, 32, 16)
domain_classifier_d5: (?, 1, 32, 4)
domain_classifier_d5_p: (?, 1, 16, 4)
classifier_output: (?, 1, 1, 4)
d1: [None, 36, 512, 32]
d2: [None, 18, 256, 64]
d3: [None, 9, 128, 128]
d4: [None, 9, 128, 64]
[None, 1, 128, 4]
u1.shape :[None, 9, 128, 64]
c1 shape: (?, 9, 128, 4)
u1_concat.shape :[None, 9, 128, 68]
u2.shape :[None, 9, 128, 128]
u3.shape :[None, 18, 256, 64]
u4.shape :[None, 36, 512, 32]
u4_concat.shape :[None, 36, 512, 36]
u5.shape :[None, 36, 512, 1]
2019-03-12 12:55:15.378518: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
Traceback (most recent call last):
File "train.py", line 282, in
train(processed_dir, test_wav_dir)
File "train.py", line 158, in train
lambda_classifier=lambda_classifier
File "/home/StarGan/model.py", line 148, in train
self.generator_learning_rate: generator_learning_rate})
File "/homeStarGan/myvenv/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 900, in run
run_metadata_ptr)
File "/home/StarGan/myvenv/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1111, in _run
str(subfeed_t.get_shape())))
ValueError: Cannot feed value of shape (8, 2) for Tensor 'source_label:0', which has shape '(?, 4)'
Python-v:3.6
Tensorflow:1.8
Help Appericiated

Hello sir,
jst now i was running the python3 train.py file .  i had faced this issue...plz tell me how can u resolve my issue...
from ._conv import register_converters as _register_converters
Loading Data...
found stat file: ./etc/SM2-stats.npz
found stat file: ./etc/TF1-stats.npz
found stat file: ./etc/TM2-stats.npz
found stat file: ./etc/TM3-stats.npz
found stat file: ./etc/SM1-stats.npz
found stat file: ./etc/SF1-stats.npz
found stat file: ./etc/SF3-stats.npz
found stat file: ./etc/TM1-stats.npz
Traceback (most recent call last):
File "/home/intel/Desktop/StarGAN-Voice-Conversion-master/utility.py", line 57, in normalizer_dict
stat_filepath = [fn for fn in glob.glob(p) if one_speaker in fn][0]
IndexError: list index out of range
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "train.py", line 282, in
train(processed_dir, test_wav_dir)
File "train.py", line 48, in train
normlizer = Normalizer()
File "/home/intel/Desktop/StarGAN-Voice-Conversion-master/utility.py", line 29, in init
self.norm_dict = self.normalizer_dict()
File "/home/intel/Desktop/StarGAN-Voice-Conversion-master/utility.py", line 59, in normalizer_dict
raise Exception('====no match files!====')
Exception: ====no match files!====

Bugs fixed ,please checkout new code.

I am using the new code and getting the same issue. Please help.

This error is not solved with the new code. Please help

Hello, I can't reproduce your problem. It is recommended to check the speaker's file path to ensure that this is correct.

Let me try this

Dear @hujinsen,
Can you please give 10 - 15 minutes of your time and have a skype call with me where I will share the screen with you and maybe then we can find out the answer. I know it's a lot to ask but I have been working on this code for 3 weeks now and I have gotten nowhere. Please let me know if you can spare some time. Please leave your email or contact me at<EMAIL_ADDRESS>Thanks

Hello, I can't reproduce your problem. It is recommended to check the speaker's file path to ensure that this is correct.

hey, I am facing the same issue , Need help


View Evaluator's Submissions

User story
As a challenge manager, in order to effectively manage evaluators for my challenge, I would like to be able to view a list submissions assigned to an evaluator.
Acceptance criteria:

[ ] A challenge manager can view a list of challenge submissions assigned to a particular evaluator
[ ] The list view identifies the evaluators name
[ ] The list view show the progress summary of evaluations

[ ] Total assigned challenge submissions
[ ] Evaluations due date
[ ] Number of evaluations completed, in progress and not started

[ ] The list view shows a list of assigned submissions from that challenge:

[ ] Submission ID
[ ] Evaluation status: completed, in progress, not started
[ ] Evaluators score, if evaluation is completed
[ ] An option to assign an evaluator, #76
[ ] An option to view an evaluation, #180

[ ] If the evaluator has been unassigned from any of the submissions of that challenge, a list unassigned submissions is displayed

[ ] Submission ID
[ ] Evaluation status: Unassigned or Recused - Unassigned
[ ] Evaluators score, if evaluation is completed
[ ] An option to reassign an non-recused evaluator

Dev tasks:

[ ] Task 1
[ ] Task 2

Definition of Done
Doing (dev team)

[ ] Code complete
[ ] Code is organized appropriately
[ ] Any known trade offs are documented in the associated GH issue
[ ] Code is documented, modules, shared functions, etc.
[ ] Automated testing has been added or updated in response to changes in this PR
[ ] The feature is smoke tested to confirm it meets requirements
[ ] Database changes have been peer reviewed for index changes and performance bottlenecks
[ ] PR that changes or adds UI

[ ] include a screenshot of the WAVE report for the altered pages
[ ] Confirm changes were validated for mobile responsiveness

[ ] PR approved / Peer reviewed
[ ] Security scans passed
[ ] Automate accessibility tests passed
[ ] Build process and deployment is automated and repeatable
[ ] Feature toggles if appropriate
[ ] Deploy to staging
[ ] Move card to testing column in the board

Staging

[ ] Accessibility tested (Marni)

[ ]  Keyboard navigation
[ ]  Focus confirmed
[ ] Color contrast compliance
[ ] Screen reader testing

[ ] Usability testing: mobile and desktop (Tracy or Marni)
[ ] Cross browser testing - UI rendering is performant on below listed devices/browsers (Tracy or Marni)

[ ] Windows/Chrome
[ ] Windows/Edge
[ ] Mac/Chrome
[ ] Mac/Safari
[ ] iOS/Safari

[ ] AC review (Renata)
[ ] Deploy to production (production-like environment for eval capability) (dev team)
[ ] Move to production column in the board

Production

[ ] User and security documentation has been reviewed for necessary updates (Renata / Tracy / Dev team)
[ ] PO / PM approved (Jarah or Renata)
[ ] AC is met and it works as expected (Jarah or Renata)
[ ] Move to done column in the board (Jarah or Renata)

Testing notes: This will need to be tested at a later time, when submissions can be assigned to an evaluator.


Formulas Not Displaying Properly in github.io version

Formulas in the github.io version of the book are not displaying properly—they are still in their raw LaTeX syntax.
Exmaple: https://allendowney.github.io/ThinkBayes2/chap02.html

As a workaround I'm pasting on the page console
window.MathJax = {
  tex: {
    inlineMath: [['$', '$'], ['\\(', '\\)']]
  },
  svg: {
    fontCache: 'global'
  }
};

(function () {
  var script = document.createElement('script');
  script.src =<EMAIL_ADDRESS>  script.async = true;
  document.head.appendChild(script);
})();

To activate matjax Source
I didn't found the spinxh config. @AllenDowney If you can point me in the right direction I can provide a pr to fix it.

@AllenDowney - The myst extension attrs_inline seems to be causing the conflict with dollarmath. Please try the update to _config.yml shown below. I have not checked if you use the attrs_inline feature in the book, but if you can live without it, hopefully this is a fix. Happy Holidays!
parse:
  # myst_extended_syntax: true  # deprecated, instead enable individual features below
  myst_enable_extensions:  # https://myst-parser.readthedocs.io/en/latest/using/syntax-optional.html
    - amsmath
    # - attrs_inline  # causing the conflict with dollarmath
    - colon_fence
    - deflist
    - dollarmath
    - fieldlist
    - html_admonition
    - html_image
    - linkify
    - replacements
    - smartquotes
    - strikethrough
    - substitution
    - tasklist

@Bearsetc That worked. Thank you so much!


Setting it up as a subsite

Is it possible to setup the site as a subsite?  The problem I'm having is that I have the main site, then I want to setup the TightWiki as a Subsite.  While I was successful getting the site up and running, all the Css, js and page references are looking for the resources on the main site, not the subsite.   Am I missing a setting?
Thank you

I've not tested that, but I will get on it in the morning. Have you tried setting the setting the site URL in the configuration under admin?
I'll ensure that that setting is used to reference all site resources (like CSS and images).

Added a pre-release that should work for you. While you should still set the site name under configuration as I mentioned above, you are correct that the sub-directory configuration was unsupported. You will need to use the prerelease 2.19.0 and alter the "BasePath" in the appsettings.json, setting it to "/yourSubFolder". Let me know if you run into any issues.
https://github.com/NTDLS/TightWiki/releases/tag/2.19.0

@beerpal243  let me know if this works for you.

Sorry for the delay... Nope, that still doesn't work. All Css, images etc are looking to the main site for the source instead of the subsite folder

Are you using the pre-release and setting the base bath in the appsettings?
https://github.com/NTDLS/TightWiki/releases/tag/2.19.0

Yes sir, I am.

Wtf…. on it

@beerpal243
Alright, I've found and fixed quite a few places that are not respecting the base path. I found that my debugger was happily service from both the root and my sub-site so my earlier tests were bogus. This time I tested with IIS.
If you wouldn't mind, give it another go.
https://github.com/NTDLS/TightWiki/releases/tag/2.20.0


Git detection

Detect if JGit is available in classpath or if Git is available somewhere in the filesystem. Then use the best implementation:

JGit
Git

@ahoy-jon What should happen when none of them are available?

For the macro ? do we include the file source anyway if git is not there ?

the macro is still working + display a single warning during compilation.
Does that sound reasonable ?


Gaurav has landed!

Added my profile to the page!

@Gaurav-Krishna-Gaali  welcome mate! Kindly share your discord username. I will add you there for further discussion of projects;

@Gaurav-Krishna-Gaali kindly get into this discord server  https://discord.gg/Kuh9xsp7

Just joined!


[BEAM-5836] Add script to sync data for Beam GitHub community metrics.

Code to sync GitHub metrics data.
I'm still working on deployment. Dashboards will be available at https://s.apache.org/beam-community-metrics once deployment done.
Includes some general code cleanup as well.
Direct link to dashboard

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.
Post-Commit Tests Status (on master branch)

Lang
SDK
Apex
Dataflow
Flink
Gearpump
Samza
Spark

Go

---
---
---
---
---
---

Java

Python

---

---
---
---

R: @swegner

FYI, the precommit jobs are stalled because: Jenkins is going to shut down

retest this please

Jenkins is still down; I've validated locally that these changes pass precommit: https://gradle.com/s/rfncnxoqevggw


Prompt LLMs in the generative AI hub in SAP AI Core

Tutorials: https://developers.sap.com/tutorials/ai-core-generative-ai.html
It's not possible to expand the sections

sorry, just realized i was redirected to the wrong link
this is not working
https://developers-qa-blue.wcms-nonprod.c.eu-de-2.cloud.sap/tutorials/ai-core-generative-ai.html


Fix internalSchema()

The root cause of the issue was that getRequestedVersion() was returning 2.0.0-rc.2.0.0 to this: (!!!)
baseVersion === '2.0.0-rc.1.0.5' && requested === -1
The reason why we returned that is because internalSchema() returned ^2.0.0-internal.8.0.0 to such a case which is deeply wrong. Such a request to resolveVersion() will produce an array with all versions ahead of that one and return the latest. Probably the code was looking for the latest 2.0.0-internal.8.0.0 patch.
This hints me that there is a deeper issue here in how we manage these cases. Currently hard-coding the desired versions for testing and probably unblock the patch release for RC1.

sorely needs more unit test coverage

Judging by the pipeline failure, there is plenty of unit test coverage, maybe there are just some gaps :P


Refactor add_individual_to_tree_sequence

The logic of that function seems good now. It could be refactored with newer lines of code.

h/t @hyanwong


BOX CLI CMDS

I am new to the Box cli and trying to pull some data.  We are new to Box and new to the Cli as I mentioned.
I am running this command:
box folders:items (Root Folder ID) --save-to-file-path=C:\test.csv --as-user=(BOX ADMIN ACCT)
Under this Root folder i have  a bunch of folder in the following structure
ROOT Folder/Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5/USER FILES HERE.PDF
How do I get the IDS for all the Sub Folders under the root folder or how do I get the ID for all the Sub-folder 5 that exist in the structure.
There are about 17k Sub folders at level 1 and each one has the same structure listed above.  There are about 9 million folders that exist at Sub Folder 5 level.

Hi @chrys6571,
the only way to get all items inside the root folder is to use a command you mentioned box folders:items 0 --as-user=USER_ID. There is no easy way to get only folders - you would have to filter them from other items on your own.
To get the id of the Sub-folder 5 you have to list items folder by folder starting from the root folder until you got there. Alternatively you can just go to this folder in a browser and copy the folder id from the path.

@lukaszsocha2

Hi @chrys6571 ,
may I ask what is the result you want to achieve? Do you want to simply list all the files in a folder with a given path e.g. ROOT Folder/Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5? If so then cli is not sufficient for such task. You have to write some custom script - I suggest to use either Python or Node and writing bash script will be much harder. Then you could use Box SDK to build your custom solution.
I prepared you really simple Python script that list all items inside the folder with given path:
from boxsdk import OAuth2
from boxsdk.client import Client
from boxsdk.object.folder import Folder

PATH = 'Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5'
DEVELOPER_TOKEN = 'INESRT YOUR TOKEN HERE'

def get_item_id_by_name_in_folder(folder: Folder, item_name: str):
    for item in folder.get_items():
        if item.name == item_name:
            return item.id
    raise Exception(f"No item found with name {item_name}")

def get_id_by_path(client: Client, path: str):
    subfolders = path.split('/')

    current_dir = client.root_folder()
    for item_name in subfolders:
        item_id = get_item_id_by_name_in_folder(current_dir, item_name)
        current_dir = client.folder(item_id)

    return list(current_dir.get_items())

if __name__ == "__main__":
    auth = OAuth2(access_token=DEVELOPER_TOKEN, client_id='', client_secret='')
    client = Client(auth)

    print(get_id_by_path(client, PATH))

You need to replace PATH and DEVELOPER_TOKEN values.
Not sure if above script will be helpful as I don't know what do you want to achieve. Please let me know and then maybe I'll be able to help better.
@lukaszsocha2

First thank you very much for taking the time to write that!
Second I basically need all the folder ID’s for every sub folder at level 5.
ROOT Folder/Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5
I am trying to set view access only to all folders from the Root Folder through Sub-Folder 4, and give the users edit access only at sub-folder 5 level.
This way the directory structure is maintained, right now users have edit access across the entire structure and they are messing with the structure.
From: Łukasz Socha @.>
Sent: Thursday, July 7, 2022 12:12 PM
To: box/boxcli @.>
Cc: Christian Taveras @.>; Mention @.>
Subject: Re: [box/boxcli] BOX CLI CMDS (Issue #352)
Berkowitz Pollack Brant Advisors
Warning: Sender @@.***.com is not yet trusted by your organization.
Please be careful before replying or clicking on the URLs.
Report Phishinghttps://cloud.graph.us/feedback?msgId=PGJveC9ib3hjbGkvaXNzdWVzLzM1Mi8xMTc3ODcwMjc0QGdpdGh1Yi5jb20%2B&orgDomain=YnBiY3BhLmNvbQ%3D%3D&opt=unsafe Mark Safehttps://cloud.graph.us/feedback?msgId=PGJveC9ib3hjbGkvaXNzdWVzLzM1Mi8xMTc3ODcwMjc0QGdpdGh1Yi5jb20%2B&orgDomain=YnBiY3BhLmNvbQ%3D%3D&opt=safe
powered by Graphus®
This message originated outside our environment. Do not click any hyperlinks, respond or open any attached files unless you have validated that the message is legitimate.

Hi @chrys6571https://github.com/chrys6571 ,
may I ask what is the result you want to achieve? Do you want to simply list all the files in a folder with a given path e.g. ROOT Folder/Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5? If so then cli is not sufficient for such task. You have to write some custom script - I suggest to use either Python or Node and writing bash script will be much harder. Then you could use Box SDK to build your custom solution.
I prepared you really simple Python script that list all items inside the folder with given path:
from boxsdk import OAuth2
from boxsdk.client import Client
from boxsdk.object.folder import Folder
PATH = 'Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5'
DEVELOPER_TOKEN = 'INESRT YOUR TOKEN HERE'
def get_item_id_by_name_in_folder(folder: Folder, item_name: str):
for item in folder.get_items():

    if item.name<http://item.name> == item_name:

        return item.id<http://item.id>

raise Exception(f"No item found with name {item_name}")

def get_id_by_path(client: Client, path: str):
subfolders = path.split('/')

current_dir = client.root_folder()

for item_name in subfolders:

    item_id = get_item_id_by_name_in_folder(current_dir, item_name)

    current_dir = client.folder(item_id)

return list(current_dir.get_items())

if name == "main":
auth = OAuth2(access_token=DEVELOPER_TOKEN, client_id='', client_secret='')

client = Client(auth)

print(get_id_by_path(client, PATH))

You need to replace PATH and DEVELOPER_TOKEN values.
Not sure if above script will be helpful as I don't know what do you want to achieve. Please let me know and then maybe I'll be able to help better.
@lukaszsocha2https://github.com/lukaszsocha2
—
Reply to this email directly, view it on GitHubhttps://github.com/box/boxcli/issues/352#issuecomment-1177870274, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AZ6LR4HFHSOYFDUOE62D4P3VS36U5ANCNFSM523G6Y4A.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>Christian Taveras | Network Administrator
Berkowitz Pollack Brant Advisors + CPAs
200 S Biscayne Blvd., 7th Floor, Miami, FL 33131-5310
Direct:<PHONE_NUMBER> | Office:<PHONE_NUMBER> | Fax:<PHONE_NUMBER>
Email: @.*** | Web: www.bpbcpa.com | vCardhttps://www.bpbcpa.com/vcards/1604.vcf
Offices in Miami, Ft. Lauderdale, Boca Raton, West Palm Beach and New York City

Accounting Today Top 100 Firms - 26 Years
Inside Public Accounting Best of the Best - 21 Years
Florida Trend Best Companies to Work - 8 Years

The information contained in this electronic message is privileged and/or confidential and is intended only for the use of the individual or entity named above. If you are not the intended recipient, or if you are responsible for delivering it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of the communication is not authorized, allowed or intended by the sender. If you have received this communication in error, please immediately notify us by telephone at the above number and forward the original message to the sender above. Thank you.

Hi @chrys6571,
I modified the script to list ids of all subfolders it the given path. To do further steps I advice to take a look here: https://github.com/box/box-python-sdk/blob/main/docs/usage/folders.md. There you can find more info about folders usage. Here comes the script:
from boxsdk import OAuth2
from boxsdk.client import Client
from boxsdk.object.folder import Folder

PATH = 'Sub- Folder 1/Sub-Folder 2/Sub-Folder 3/Sub-Folder 4/Sub-Folder 5'
DEVELOPER_TOKEN = 'INSERT_TOKEN_HERE'

def get_item_id_by_name_in_folder(folder: Folder, item_name: str):
    for item in folder.get_items():
        if item.name == item_name:
            return item.id
    raise Exception(f"No item found with name {item_name}")

def get_all_folder_ids_in_path(client: Client, path: str):
    subfolders = path.split('/')

    current_dir = client.root_folder()
    for item_name in subfolders:
        item_id = get_item_id_by_name_in_folder(current_dir, item_name)
        current_dir = client.folder(item_id)

    return [item.id for item in current_dir.get_items() if item.type == 'folder']

if __name__ == "__main__":
    auth = OAuth2(access_token=DEVELOPER_TOKEN, client_id='', client_secret='')
    client = Client(auth)

    list_of_folder_ids = get_all_folder_ids_in_path(client, PATH)
    print(list_of_folder_ids)

It should print ids of all subfolders inside Sub-Folder 5.
Best,
@lukaszsocha2


Project graphql map location

sets to relative path

#trivial

To ensure this doesn't change, it will need the Podfile change too

OK, there we go 👍

merge on green


数据集是否有sharepoint之外的下载方式？

非常棒的工作！
请问作者，数据集比较大，sharepoint网页下载太慢，总是中止，是否有其他可断点续传的下载方式，或者百度网盘方式？

Currently, we do not provide download methods other than OneDrive.

Well, all right. Thank you!

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

Resolved

@cndplab-founder How did you download from sharepoint? Im not able to download using curl or wget. Can you help?


Release new version

Please release a new version on npm. The latest one does not include the fix for the getUserQuestions().

Thanks for contribution @jirutka . I've merged and published the latest to npm. Thanks!


fix(knex): order by with a formula field should not include as for sub-queries

follow on from #2848, noticed for sub-queries it was still adding as to formula field on order by

Codecov Report

Merging #2929 (d0af02a) into master (61d1e85) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master     #2929   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          193       193
  Lines        11782     11782
  Branches      2718      2718
=========================================
  Hits         11782     11782

Impacted Files
Coverage Δ

packages/knex/src/query/QueryBuilder.ts
100.00% <ø> (ø)

packages/knex/src/query/QueryBuilderHelper.ts
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

Btw, there is the same issue on group by

https://github.com/mikro-orm/mikro-orm/commit/e27e4b907154933feba985badd4f6a60dee06317 should help with that


chore:  Improve performance by reducing the number of event listeners

Description
In the original code,  there are two separate event listeners for the scroll event. Each event listener listens to the scroll event and triggers a specific action when certain conditions are met. While this works, it's not the most efficient way to handle the scroll event. In This pull request i combined two separate scroll event listeners into a single listener for better performance and code organization.
Checklist

[x] My code adheres to the established style guidelines of the project.
[x] I have included comments in areas that may be difficult to understand.
[x] My changes have not introduced any new warnings.
[x] I have conducted a self-review of my code.

Hi @akshitagupta15june, Why did you closeed this PR?  If I did something wrong please let me know I will try to fix.