cos-rebrand: Mechanism for derivatives branding and customization

At the moment is possible to configure the derivative's setting (such as upgrade channels, grub, etc ) via oem file, but there is no common entrypoint for configuration, nor a consistent way to do so
Is your feature request related to a problem? Please describe.
Configuring GRUB entries, LIVECD labels, os-release informations, and such are all needed to be applied with OEM or either overriding the values file, but for the pieces that can be tweaked in runtime there should be a common way, like we do for e.g. with channel upgrades (we have a /etc/cos-upgrade-image file which can used to tweak cos-upgrade behavior)
Describe the solution you'd like
Extend similarly to what we do with cos-upgrade for the other customizable pieces, like GRUB configuration, os-release file, labels, partitions (like, for e.g. the default size).
We could have even a script cos-rebrand which is just meant for this purpose, for example reading all the branding data from a config file which can be customized, and applying it in the system.
Describe alternatives you've considered
N/A
Additional context
Related issues:

[ ] #150
[ ] #160
[ ] #154
[ ] #516

A general /etc/cos/config has been introduced in #517


Artifactory Docker Image(s) should support secrets

Currently, if using an external database, an environment property for setting the database password can be leveraged.
A better way would be to use Docker secrets. The official PostgreSQL image show cases how that can be achieved. They leave the choice to the user to provide the password via env property or secret definition.
More details can be found here: https://github.com/docker-library/postgres/issues/111
(I am not quite sure if this is the correct place to report the issue. If not please correct me.)

Hi @holgerstolzenberg . This is a good idea. You can open a task in https://www.jfrog.com/jira/secure/Dashboard.jspa.

JIRA issue was created:
https://www.jfrog.com/jira/browse/RTFACT-14826

Great! I will close this and allow Artifactory dev to take the JIRA issue.


Switch to Circle 2.0

Experimenting with CircleCI 2.0.

Well it only took me about 30 builds to get this to work, but I did it. I'm not that much a fan of the new way configuration works, but you can't argue that users now have a lot more control! I guess I just miss the way Circle embraced convention over configuration. :\

Merging this in order to babysit deployments.


Add graph events to ListenRuntime

The purpose of this PR is to use this in noflo-ui to listen for changes to the graph from the runtime, addressing this issue: https://github.com/noflo/noflo-ui/issues/390

Merged manually to master

Released in 0.2.0


test TempestRemap on windows

Is your feature request related to a problem? Please describe.
TR should work using the latest package versions (CCTR, HDF5, etc). We should test this out by running all our tests on windows (remove if !windows checks)
Update
ClimaCoreTempestRemap casts a long * to a size_t * in this line, which point to different sizes of memory on windows. So we won't be able to use TempestRemap on Windows after all.

aw, too bad. well, we can offer non-global runs to people with windows, in any case!
perhaps relevant for @simonbyrne to know but not a priority

issue opened here: https://github.com/ClimateGlobalChange/tempestremap/issues/121


[pinned] Package npm name transfer with official "react-native-scandit" by scandit

Scandit is implementing an official react-native bridge for the Scandit SDK. As soon this bridge is deemed ready, the npm package namespace react-native-scandit should transfer to the official package, while this implementation here will drop back to react-native-scandit-shoplink (change of APIs).
Until that point, the official WIP can be used via git and we support this package here until the transfer.

Hello @D1no ,
I'm writing on behalf of Scandit team to let you know that we are finally releasing the official react-native bridge for our SDK. We decided to use scandit-react-native namespace (all of our npm packages have the scandit- prefix and we want to maintain the consistency), so no "namespace transfer" will be required :)
We have a huge favour to ask you, though. Could you deprecate you package, so that it would be easier for other users to find the official package, that will be supported by us from now on?
All the best,
Tomek

Sorry, I did not see this issue as it’s muted. We’ll update a notice next week (currently not in office).

Thanks a lot @D1no !


luci-mod-dashboard: show IPv6 connection uptime

Show connection uptime for both IPv4 & IPv6 interfaces.
Rename display field from 'Connected since' to 'Uptime' as this makes
more sense to me.  You could say 'Connected for' or 'Connection
duration'.  After a lot of thought decided that 'Uptime' is what I'm
most comfortable saying.
Signed-off-by: Kevin Darbyshire-Bryant<EMAIL_ADDRESS>

Merged, thank you!


 I want to use inline objc classes in my Haskell program. Suppose I have done it in a file Main.hs. Can you explain how I have to compile it with ghc to obtain an executable function main. I am a bit confused: how to use the objc compiler?

Have a look at the Makefiles of the various example applications of language-c-inline from https://github.com/mchakravarty/language-c-inline/tree/master/tests/objc
These Makefiles call both GHC as well as the ObjC compiler (clang) using the appropriate command line arguments.


navbar padding is too mcuh on small device

navbar LEFT RIGHT TOP padding is too much,  less padding may it make look much better.
Just decrease top left right padding for sm device,

***not BOTTOM padding

fixed by #468


Fix issue with Windows JAWT swapchains

FreeDrawingSurfaceInfo (called inside of releaseDrawingSurface) apparently invalidates the device context so future calls to PlatformWGL::makeCurrent fail. I don't remember seeing this before, so perhaps Windows made a change which exposed our bug. The solution is to call GetDC to get a fresh device context.
Fixes #994

Yeah, GetDC should be balanced with calls to ReleaseDC. We call ReleaseDC inside destroyNativeSurface, but I just realized this won't get called in this case because it's only for destroying a surface created through createNativeSurface- not AWT Canvases. :/ I might need to rethink this a tad..
If the native surface on Windows was a HWND it might make this easier. We could defer calls to GetDC / ReleaseDC to the driver.

Samples should be fixed through the change in FilamentApp. Java projects should not be affected, though Tungsten has some unrelated fixes needed which I'll put up in a separate PR.


Simplify runtime api error handling

This pr simplifies the runtime api error handling by introducing an error type for the runtime api.
polkadot companion: https://github.com/paritytech/polkadot/pull/2437

bot merge


API error 404 page

this instruction
In the Azure portal, search for verifiable credentials. Then, select Verifiable Credentials (Preview).
From the left menu, select Getting started.
results in this result
Not found
failedAdminServiceApiCall {"requestId":"","date":"Tue, 07 Jun 2022 18:01:56 GMT","mscv":".2","error":{"code":"failedToFindSpecifiedTenantInDb","message":"Your organization is not yet set up to issue Verifiable Credentials, please navigate to the "Getting started" item on the left menu. Tenant Id: ","innererror":{"code":"UnknownResource","message":"CosmosDB resource not found."}}} 404
making it impossible to follow. I have reproduced this on multiple tenants newly created by AAD and B2C, but not consistently.

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

ID: f84b158e-eebc-7d96-0992-8864316ddf5c
Version Independent ID: 8909ba9b-bf26-fb5c-29f0-76244984e75a
Content: Tutorial - Configure your tenant for Azure AD Verifiable Credentials (preview) - Microsoft Entra
Content Source: articles/active-directory/verifiable-credentials/verifiable-credentials-configure-tenant.md
Service: decentralized-identity
Sub-service: verifiable-credentials
GitHub Login: @barclayn
Microsoft Alias: barclayn

@mistokes-ppr
Thank you for your feedback!
When following the documentation, I wasn't able to reproduce your issue. However, since this issue isn't directly related to improving our docs, and to gain a better understanding of your issue, I'd recommend working closer with our support team via an Azure support request. Or you can leverage our Q&A forum by posting your issue there so our community, and MVPs can further assist you in troubleshooting this issue.


Lazy load images for performance

Hi there, is it possible to lazy load the images only when in view for performance?

Thank you for the suggestion, I will work on it soon

The lazy loading for plugin was added, use the new version


[BUG]

Error when starting the fast api application:
Traceback (most recent call last):
File "project/app.py", line 1, in
from fastapi import FastAPI
File "/project/venv/lib/python3.8/site-packages/fastapi/init.py", line 7, in
from .applications import FastAPI
File "project/venv/lib/python3.8/site-packages/fastapi/applications.py", line 3, in
from fastapi import routing
File "project/venv/lib/python3.8/site-packages/fastapi/routing.py", line 6, in
from fastapi import params
File "project/venv/lib/python3.8/site-packages/fastapi/params.py", line 14, in
class Param(Schema):
TypeError: function() argument 'code' must be code, not str

Can you define your environment? Python version and installed packages:
python --version
python -m pip freeze

Running into the same issue. I wonder if it's related to Python 3.8 because it started happening when I upgraded my Docker container to python:3.8.0-slim.
Version: Python 3.8.0
Packages:
aiofiles==0.4.0
aiosqlite==0.10.0
asyncpg==0.18.3
ciso8601==2.1.2
Click==7.0
fastapi==0.43.0
h11==0.8.1
httptools==0.0.13
migri==0.1.3
pydantic==1.1.1
PyPika==0.35.16
sqlparse==0.3.0
starlette==0.12.9
tortoise-orm==0.15.1
typing-extensions==<IP_ADDRESS>
uvicorn==0.10.8
uvloop==0.14.0
websockets==8.1

@AndreiToader1 I found the issue. FastAPI doesn't work w/ pydantic v1. Modifying my requirements to pydantic==0.32.2 solved the problem for me.
See https://gitter.im/tiangolo/fastapi?at=5db558949c39821509922795

For what it’s worth, the pydantic v1 was almost certainly the source of the issue, but as of v0.44 fastapi now does support pydantic v1. Be aware there are a number of breaking changes that you may need to address when you upgrade to pydantic v1.

Sorry for the late response guys. I also solved the problem by changing the version of Pydantic. Thanks

Have the same issue after 0.45.0 release.
Installation removed pydantic 0.32.0 and force installing of version 1.2
Collecting fastapi==0.45.0
  Downloading https://files.pythonhosted.org/packages/6b/f4/8aa81e9e5de3877a3149f7e53b21cc3de28d2a474692f17b79b6baf1deb8/fastapi-0.45.0-py3-none-any.whl (43kB)
     |████████████████████████████████| 51kB 469kB/s
Collecting pydantic<2.0.0,>=0.32.2 (from fastapi==0.45.0)
  Using cached https://files.pythonhosted.org/packages/c2/66/b084a7bb0e9762b3e2e03f5051a3f645208e6c8b266e8e253f9b26bf42b9/pydantic-1.2-py36.py37.py38-none-any.whl
Requirement already satisfied: starlette<=0.12.9,>=0.12.9 in c:\users\gosha\appdata\local\packages\pythonsoftwarefoundation.python.3.7_qbz5n2kfra8p0\localcache\local-packages\python37\site-packages (from fastapi==0.45.0) (0.12.9)
Installing collected packages: pydantic, fastapi
  Found existing installation: pydantic 0.32
    Uninstalling pydantic-0.32:
      Successfully uninstalled pydantic-0.32
  Found existing installation: fastapi 0.44.1
    Uninstalling fastapi-0.44.1:
      Successfully uninstalled fastapi-0.44.1
Successfully installed fastapi-0.45.0 pydantic-1.2

And after it i getting this:
Traceback (most recent call last):
  File "C:/Users/gosha/PycharmProjects/nw_backend/main.py", line 4, in <module>
    from newwheel_backend.fastapi_app_instance import app as initial_app
  File "C:\Users\gosha\PycharmProjects\nw_backend\newwheel_backend\fastapi_app_instance.py", line 1, in <module>
    from fastapi import FastAPI
  File "C:\Users\gosha\PycharmProjects\sas\venv\lib\site-packages\fastapi\__init__.py", line 7, in <module>
    from .applications import FastAPI
  File "C:\Users\gosha\PycharmProjects\sas\venv\lib\site-packages\fastapi\applications.py", line 3, in <module>
    from fastapi import routing
  File "C:\Users\gosha\PycharmProjects\sas\venv\lib\site-packages\fastapi\routing.py", line 6, in <module>
    from fastapi import params
  File "C:\Users\gosha\PycharmProjects\sas\venv\lib\site-packages\fastapi\params.py", line 14, in <module>
    class Param(Schema):
TypeError: function() argument 1 must be code, not str

My python version is 3.7.5.
I can solve the problem only by downgrading the version of Pydantic back to 0,32.0.

@ShagonRU It looks like there might be something messed up in your environment -- try adding
from fastapi import __version__; print(__version__) somewhere in your fastapi_app_instance.py. And make sure the actual runtime version of fastapi is the same as the version you just installed.

@dmontagu
Thank you! It helps me to resolve this issue.
My version was 0.43.0 by some reason...

Thanks @prostomarkeloff and @dmontagu for the help here! :cake: :tada:
I think the original problem was solved, right @AndreiToader1 ?


[e2e]: generic schedule main multi-uses slsa3

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/7598858660
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Trigger: schedule
Branch: main
Date: Sun Jan 21 04:44:20 UTC 2024

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/7606323413
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Trigger: schedule
Branch: main
Date: Mon Jan 22 04:46:31 UTC 2024
Tests are passing now. Closing this issue.


Content-MD5 should always be returned when listing blobs

Which service(blob, file, queue, table) does this issue concern?
blob
Which version of the Azurite was used?
3.14.0
Where do you get Azurite? (npm, DockerHub, NuGet, Visual Studio Code Extension)
npm
What's the Node.js version?
16.13.1
What problem was encountered?
When listing blobs, it occasionally return blobs without a Content-MD5 property in the XML response if the MD5 is empty. Maybe
having an empty MD5 value is not the exact cause but that's my observation so far.
Steps to reproduce the issue?
Upload an append blob to azurite instance with an empty MD5 value. Try to list the blob container which should return that blob.
In the response, the Content-MD5 property is missing.
Actual response:
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="" ContainerName="">
    <MaxResults>1000</MaxResults>
    <Delimiter>/</Delimiter>
    <Blobs>
        <Blob>
            <Name>blob</Name>
            <Properties>
                <Creation-Time>Thu, 11 Mar 2021 23:09:53 GMT</Creation-Time>
                <Last-Modified>Sat, 07 Aug 2021 00:19:39 GMT</Last…>
                <Content-CRC64 />
                <Cache-Control />
                <Content-Disposition />
                <BlobType>BlockBlob</BlobType>
                <AccessTier>Hot</AccessTier>
                <AccessTierInferred>true</AccessTierInferred>
                <LeaseStatus>unlocked</LeaseStatus>
                <LeaseState>available</LeaseState>
                <ServerEncrypted>true</ServerEncrypted>
            </Properties>
            <Metadata />
            <OrMetadata />
        </Blob>
    </Blobs>
    <NextMarker />
</EnumerationResults>

Expected response:
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="" ContainerName="">
    <MaxResults>1000</MaxResults>
    <Delimiter>/</Delimiter>
    <Blobs>
        <Blob>
            <Name>blob</Name>
            <Properties>
                <Creation-Time>Thu, 11 Mar 2021 23:09:53 GMT</Creation-Time>
                <Last-Modified>Sat, 07 Aug 2021 00:19:39 GMT</Last…>
                <Content-CRC64 />
                <Content-MD5/>   ------------------> This is missing
                <Cache-Control />
                <Content-Disposition />
                <BlobType>BlockBlob</BlobType>
                <AccessTier>Hot</AccessTier>
                <AccessTierInferred>true</AccessTierInferred>
                <LeaseStatus>unlocked</LeaseStatus>
                <LeaseState>available</LeaseState>
                <ServerEncrypted>true</ServerEncrypted>
            </Properties>
            <Metadata />
            <OrMetadata />
        </Blob>
    </Blobs>
    <NextMarker />
</EnumerationResults>

The public Azure blob service always returns the empty Content-MD5 in its list blob responses.
Have you found a mitigation/solution?
People can manually parse the response and handle that. However, the @azure/storage-blob sdk currently cannot handle this situation because it uses NodeJS standard library to process that property value which will throw if the value is undefined. Due to that, such blob can cause the SDK to not be able to list any blobs if the response contains those problematic blobs.

OK, thanks for sharing that. The error is about Node's crypto API expecting a string like argument but receives undefined.
The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined.
We encountered this issue while using AzCopy to upload blob to Azurite. AzCopy sends and initial Put Blob request to create an empty blob at the destination and in the headers set the initial content-md5 to empty string. It then iteratively make Put Block List APIs to append the actual contents and finally set the content-md5 to the expected value. If we try to list blobs in Azurite when the content-md5 is still empty, the list response will contain undefined for content-md5. The SDK will attempt to parse it and fail.
I'll open an issue on the SDK repo and link to this issue. Since the public Azure service is not making the Content-Md5 optional, could you help double check if the API spec needs an update?

could you help double check if the API spec needs an update?
[Wei] in the blob rest API doc, it says

The Content-MD5 element appears in the response body only if it has been set on the blob using version 2009-09-19 or later.

So I believe this is expected contentMD5 is not required.

@JasonYeMSFT
After I discuss with JS SDK owner, looks this is a fixed JS SDK issue.
Would you please check you are using the latest JS SDK?

We are 1 version behind but I don't recall seeing anything related to that from the latest change log. I'll double check.

hi guys is there any progress on this ?

@DavidNorena
This is an js SDK issue, since SDK not aligned with rest API doc.
It should already been fixed in JS SDK.

Close this issue as JS SDK is already fixed.

Still having this issue with azurite v3.21.0

I also still have this issue in 3.21.0.

@acmoune , @DylanBruzenak
Please note the fix is in Js sdk, instead of Azurite.
Are you using the latest version of Azure Storage JS SDK?

@blueww I am using azure-storage-blob 12.12.0. Just created the project last week. Manually calculating the hashes does fix it:
    const md5 = createHash('md5').update(blobContents).digest('hex')
    await blockClient.uploadStream(Readable.from(blobContents), blobContents.length, 5, {
      blobHTTPHeaders: { blobContentMD5: Buffer.from(md5, 'hex') },
    })

@DylanBruzenak
Would you please confirm which is the issue you meet with JS SDK 12.12.0 + Azurite 3.21.0?

You meet JS SDK failure as following in list blob, after upload a blob without set ContentMD5:
The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined.
You don't meet JS SDK failure in list blob, but just expected the list out blob should return ContentMD5 value (or an empty Content MD5 header?), even if you don't set ContentMD5 in upload blob?

For 1, Per what I get from JS SDK owner, this should not happen on 12.12.0. If it still happen, would you please share your JS SDK code to repro the issue (hide credential if any) and Azure Debug log?
For 2, if user has not set ContentMD5 properties to a blob, the contentMD5 not return behavior is aligned with blob rest API doc, it says

The Content-MD5 element appears in the response body, only if it has been set on the blob by using version 2009-09-19 or later.

I'm hitting #1. I cannot browse azurite using the latest version of the vs code plugin (Azurite v3.21.0), js SDK 12.12.0, and mcr.microsoft.com/azure-storage/azurite:latest for the docker image. Manually calculating the md5 and uploading it fixes it.
This is the code (modified slightly to remove some intermediate layers an:
app.ts:
import { ContainerClient } from '@azure/storage-blob'
import express from 'express'
import multer from 'multer'
import { Readable } from 'stream'

const CONNECTION_STRING = 'connection_string_goes_here'

const uploadBlob = async (blobName: string, blobContents: Buffer) => {
  const client = new ContainerClient(CONNECTION_STRING, 'files')
  const blockClient = client.getBlockBlobClient(blobName)

  await blockClient.uploadStream(Readable.from(blobContents), blobContents.length)
}

const v1Router = express.Router()

const uploadStrategy = multer({ storage: multer.memoryStorage() }).single('file')

v1Router.post('/file', uploadStrategy, async (req, res) => {
  const fileName = req.file?.originalname
  const fileBuffer = req.file?.buffer

  if (!fileName || !fileBuffer) {
    res.status(400).send('Missing fileName or fileBuffer')
    return
  }

  await uploadBlob(fileName, fileBuffer)

  res.end()
})

const app = express()

app.use('/v1', v1Router)

app.listen(3000, () => {
  console.log(`Listening on 3000`)
})

package.json:
{
  ...
  "dependencies": {
    "@types/express": "^4.17.16",
    "@types/multer": "^1.4.7",
    "@types/node": "18.11.10",
    "express": "^4.18.2",
    "multer": "^1.4.5-lts.1",
    "ts-node": "10.9.1",
    "typescript": "4.9.5",
  "@azure/identity": "^3.1.2",
  "@azure/storage-blob": "^12.12.0",
  },
}

You can curl this:
curl -F 'file=ABSOLUTE_FILE_PATH' "localhost:3000/v1/file"
After that browsing to this file in vscode displays the error string.
Changing uploadBlob to the example from my last post fixes it.

@DylanBruzenak
How do you "browsing to this file in vscode"?
As I know, the fix in JS SDK is: SDK won't fail when list blob when blob not has ContentMD5.
So it looks the problem is which app/sdk you use to  "browsing to this file in vscode"?  Do you use the latest app/SDK?

@blueww I am browsing to the file in the Azurite v3.21.0 VS Code plugin on the left bar.

@DylanBruzenak
I don't quite understand what do you mean by "browsing to the file in the Azurite v3.21.0 VS Code plugin on the left bar".
Azurite doesn't provide a browser to browse blobs in Azurite.
I think you might use other tools in VS code. Could you give the detail steps you use to browser the file (hide credential if any)?

Microsoft provides a va code plugin for azurite.  https://marketplace.visualstudio.com/items?itemName=Azurite.azurite


UI scaling improvements

Fix general UI scaling bugs including

Top bar elements drift downwards when scale goes under 1.0
Background for "Actions" bar didn't automatically adjust to rescaled sizing (required second click on "Actions" menu item)
Prevent BPM "ratchet" issues where scaling up increases keypad button height, but scaling down leaves it at the maximum height scaled to
Beat Indicator / Stop all button not scaling with UI
interface jitter in UI Setting editor
Width of text elements in UI settings editor, but font size changes
Undo/Redo buttons to layout to scale properly
Prevent text overflow in about dialog

Current (Beat generator panel has been scaled up, then returned to smaller size):

Pull Request:

Hey, thanks for this.
Just 2 comments but the rest looks fine to me.

coverage: 32.081%. remained the same
when pulling 502d30914ea35b5cbc9c2c1242ee44b13a59949c on lilyCalla:ui-scaling-improvement
into 8e695ef306f1a0d81a78099bff0de0b6a53ac0d0 on mcallegari:master.


Direction for addon?

I'm curious to know from anyone who is/has/tried to use this, whether this node-based solution or a pure code-based solution would be better?
 I was debating a rust or C# implementation as well.
For my own use-case, I would more prefer a code-based instead of dragging nodes, and I assume it would be more performant (but not sure).

It's possible to allow both node- and code-based creation of trees, the performance after creation should be equal.
C# sounds interesting, it's officialy supported in Godot and would allow using the plugin with Unity as well.

One thing I see right away after coming back after a year, is I would probably apply some code style/standards updates, such as using PascalCase convention for script filename and class names. I think someone had gone through and added static typing, but if not I would add that too.
I wish there were a consistent convention for... "namespacing", reminds me of my PHP days WordPress_Post, WordPress_Page for class names to avoid clashes with common things.

Hey Brandon, I'm glad you've opened this issue, i'll give my feedback about the library.
Building a tree with the library using the existing godot node editor is slow. I was actually considering doing everything from code as well. One option would be to create a more integrated UI for building behavior trees, like the animation blend tree. Godot already has some components to create graph editing UIs.

I feel like I dont have enough experience myself yet ACTUALLY implementing any game logic with either a FSM or BT to really know what im doing

No time like the present! Maybe we need a more substantial demo project with player input so we can actually know how it feels to implement the game logic. It's not a full game, but it provides a space to experiment.
Here's some screenshots of some existing ones

The main features they seem to all provide is:

Adding nodes and children, naming, basic tree stuff
Editing parameters for a node
Viewing the current state at runtime? (I feel like i've seen videos watching them step through but i could be wrong)

Another thing I'd like to bring up is the issues mentioned in #19 - I'm not sure if the performance is as bad as is alluded to, but I think it's something that needs to be addressed. I've done just fine implementing actions that take multiple ticks. The key is to return the RUNNING status and use memory selector/sequence nodes. Since the composite nodes return their child's running status, there's a nice depth first traversal(which enters/exits nodes) to the currently running node.

Hello,
New Godot & Behavior Tree user here, ~1 week :), trying to use BT's on a personal research project. This issue seems really on the right time.
Two wishes wrt the current status:

A graphical editor, with the outlined features above would be amazing.
A simpler "bridge" to the actor, concerning the implementation of actions and conditions.

Concerning the "bridge" to the actor point, I find the current solution a bit clumsy :(. Maybe I didn't understood well enough the right workflow? When adding an action or condition node it is required to override the tick method of BehaviorCondition or BehaviorAction. If there are "many" actions and conditions they become that (too) many files. In my particular use, each one simply calls a related actor method. For example,
extends "res://addons/godot-behavior-tree-plugin/action.gd"

func tick(tick: Tick) -> int:
	var delta = tick.blackboard.get("delta")
	return tick.actor.ask_waypoint(delta)

The result is that, while creating (and debugging) the tree, one is switching from file to file...
Why not let the implementation of actions and conditions tick be defined by actor's methods and take advantage of GDScript dynamic features (although "functions are not first-class citizens" one can use Node.call("function", args))?
The core of what I'm saying here can be illustrated with the following screen capture, from an experiment I made:

Sorry for the (quite) long, certainly naive, post.

@fmgc what you say makes sense. You do really have to create a lot of files to create any real AI. I think this is possible, when adding signals to a node, there's an editor which allows you to select which function should be called, I don't see why this couldn't behave the same way and reuse the godot code.

Hi @aclave1,
Meanwhile, maybe there is a more elegant solution: Just extend bt_base with suitable classes.
For example:
extends "res: //addons/godot-behavior-tree-plugin/bt_base.gd"
export (String) var actor_action = ""
# Leaf Node
func tick (tick: Tick) -> int:
    return tick.actor.call (actor_action, tick)

and
extends "res://addons/godot-behavior-tree-plugin/bt_base.gd"
export (String) var actor_condition = ""
# Leaf Node
func tick(tick: Tick) -> int:
	return tick.actor.call(actor_condition, tick)

On actor, actor_action and actor_condition must be the names of methods with a single argument, tick: Tick, that return an int.
I think that signals may not work well because nodes must return a status.

@brandonlamb For what it's worth, I'd rather have a pure-code implementation to avoid the node traversal and the memory overhead of just having nodes overall. I also think it would be more performant. Perhaps we could use something similar to CallbackDelegator, Behavior, and ResourceSet as presented by willnationsdev in this youtube video.

How do you noticed that using the scenetree is slower, and to what extent please ?
Keeping track of the nodes without anything graphic scares me. I need a solid reason to do everything in scripts.

Based on what some people want here, you may want to check out https://github.com/fian46/addons-btree.  It has a graph editor, with a drop down selector for functions that start with task_.  With some basic functions like duplication and collapsing subtrees (but no way to collapse again easily after expanding).  Unlike scenes, there's no easy way to copy subtrees between different trees.
Def worth checking out this channel where I saw it being used.  It has a gui (make sure you click save (NOT CTRL+S, NOT ALWAYS GOOD ENOUGH) any time you even THINK about leaving the tree editor window. (Also I recommend adding in git regularly.  I've had trees completely disappear)  I routinely would get random crashes if I didn't save, then play (as opposed to playing which triggers a save before trying to execute).
I tried making editor plugins and I know how hard it can be; wasn't able to do what I wanted after weeks of trying.  IDK if @brandonlamb has attempted the editor portion at all, but personally I think it's a waste of time unless someone already has experience working with plugins, or they document and support it better.  IMO
IDK if nodes cause much overhead.  I have a vague memory that the way GDScript is designed, that there is no cost (or next to no cost) over a normal reference.  Sticking to the system means it's more intuitive for new Godot users.
I know every other engine uses a visual layout, but I honestly don't see why it's needed.  It seems like more of a headache than anything.  There is no real advantage to it over the scene editor.  PLUS, think about the options that you have with the scene graph (which is why I came here after using fian46's solution above) are better.  With scenes, I can package up behaviors into drag and droppable prefabs.  So if I need the same behavior set in multiple places, I can duplicate and modify them, making them less error prone, etc.
The benefits of pure code is versioning.  However, if it turns out that speed IS a factor, I see no reason why you couldn't "compile" a visual or scene graph at runtime to a pile of pure classes.  I think the loss of flexibility of being able to add or remove behaviors at runtime would be a downside.  I'm sure there are ways around it, but I'm considering, what if I want to model an agent being able to learn?  Or add a new ability based on a pickup.  I'm only a few days into this behavior tree stuff so maybe that's not ideal, so idk.
So, my own personal opinion, the best is scene based tree representation.  I'm going to probably use the above tactic to call functions by string to avoid tons of unnecessary files.  Ideally it'd be cool to have the same drop_down feature fian46's btree has, but I'm not sure that's possible as an editor export.
Unless I'm missing something, I just started using this library and I feel like I've wasted as much time learning about as I could have just wrote my own.  I'm still failing to understand why some nodes chose to _execute() on their children and other's tick().  And what is supposed to be put in the enter() function.  For example, the Wait node seems to completely not work if it's put under a child that calls _execute(), since that will call enter() which resets the counter.  Add delta to tick btw.  It just makes sense, right?  The wait node sets up its own _process() which will run forever.  It should be able to tick it's counter from the tick function with delta
I'd also like to see the ability to continue an action without fully evaluating the tree.  I envision calling quick_tick() every frame and calling something like full_tick() to force the tree to evaluate from the root.


Refactoring

Still having 'this is a test commit' issues, but all the tests pass.

This seems to have some garbage in it, and as it is quite old, might also be quite out of date, so I'm going to close this.


[DDW-167] Consolidate Japanese translations

This PR consolidates Japanese translations. Daedalus has a dedicated translator on board for a while now. She is amazing and she knows the product well so it is time to review all Japanese translations done in the past by different people and translation agencies.
Todos

[x] Review and update all Japanese translations

Screenshots

Screenshot

Testing Checklist

Slack QA thread
[ ] Test

Review Checklist
Basics

[ ] PR has been assigned and has appropriate labels (feature/bug/chore, release-x.x.x)
[ ] PR is updated to the most recent version of the target branch (and there are no conflicts)
[ ] PR has a good description that summarizes all changes
[ ] PR has default-sized Daedalus window screenshots or animated GIFs of important UI changes:

[ ] In English
[ ] In Japanese

[ ] CHANGELOG entry has been added to the top of the appropriate section (Features, Fixes, Chores) and is linked to the correct PR on GitHub
[ ] Automated tests: All acceptance and unit tests are passing (yarn test)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in development build (yarn dev)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in production build (yarn package / CI builds)
[ ] There are no flow errors or warnings (yarn flow:test)
[ ] There are no lint errors or warnings (yarn lint)
[ ] There are no prettier errors or warnings (yarn prettier:check)
[ ] There are no missing translations (running yarn manage:translations produces no changes)
[ ] Text changes are proofread and approved (Jane Wild / Amy Reeve)
[ ] Japanese text changes are proofread and approved (Junko Oda)
[ ] UI changes look good in all themes (Alexander Rukin)
[ ] Storybook works and no stories are broken (yarn storybook)
[ ] In case of dependency changes yarn.lock file is updated

Code Quality

[ ] Important parts of the code are properly commented and documented
[ ] Code is properly typed with flow
[ ] React components are split-up enough to avoid unnecessary re-renderings
[ ] Any code that only works in main process is neatly separated from components

Testing

[ ] New feature/change is covered by acceptance tests
[ ] New feature/change is manually tested and approved by QA team
[ ] All existing acceptance tests are still up-to-date
[ ] New feature/change is covered by Daedalus Testing scenario
[ ] All existing Daedalus Testing scenarios are still up-to-date

After Review

[ ] Merge the PR
[ ] Delete the source branch
[ ] Move the ticket to done column on the YouTrack board
[ ] Update Slack QA thread by marking it with a green checkmark

@nikolaglumac, can you update formatting as you did before. This PR is ready for QA. Junko will probably be the only person who can test this. And Taro can help possibly.

@nikolaglumac, can you update formatting as you did before. This PR is ready for QA. Junko will probably be the only person who can test this. And Taro can help possibly.

@dark done!

@yakovkaravelov can you please take over this PR and check/fix issues that Junko found and listed in this document? https://docs.google.com/document/d/1xD2jrKkNDBbNAR-7MOFvmFt0s7wbB8vj0x5QWcQg-fE/edit
Thanks!

@darko-mijic @nikolaglumac This was finished. Please review.
Thanks.

@darko-mijic can you ask Junko to check again please?

I did.


Add a period to the end of a list line

Why:
Add a period to the end of a list line to maintain list consistency
Closes: #33346
What's being changed (if available, include any code snippets, screenshots, or gifs):

Add a period to the list line on line 22

Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).
[x] For content changes, I have completed the self-review checklist.

@SeanAverS Thanks so much for opening a PR with this fix! I'll update the branch and get this merged once tests are passing 🍏


Fix incorrect cargo instruction invocation

Cargo instructions use cargo::, with two :
https://doc.rust-lang.org/cargo/reference/build-scripts.html#outputs-of-the-build-script

I actually resolved the conflict so that I can re-release the versions... 😄


drivers: cache: nrf: Fixes and optimization in the driver

Fixes:

Hanging when performing full cache operations
Lack of data cache flush before disabling

Optimization:

Remove busy wait from status polling
Remove spin lock from line operations. Using LINEADDR readout to detect preemption

Additionally, use Kconfig DCACHE line size instead of fixed value in the driver.

Compilation errors after disabling CONFIG_DCACHE

Observing this issue when CONFIG_DCACHE=n:

Fixed @KAGA164 finding.


[Bug] Table cannot be displayed when edit again

After the table is saved, it cannot be displayed when it is edited and displayed again

When edit showing

Can you tell me specifically where this code should be placed? Because I am using the npm package form. After passing the html value of the table to the Richtext, I initialize this code and find that although this problem is solved, I cannot insert a table again, and the table cannot be fully displayed in the output html.

Do you dependencies on react-quill or vue-quill or other?

If it weren't for the abov.
You can refer to the following code (Not HTML assignment):
const quill = new Quill('#root', options);
const delta = quill.clipboard.convert({
  html,
  text: '\n'
})
const [range] = quill.selection.getRange();
quill.updateContents(delta, Quill.sources.USER);
quill.setSelection(
  delta.length() - range.length,
  Quill.sources.SILENT,
);
quill.scrollIntoView();

Our actual use may be more complicated than the demo. We did this code after getting the html when initializing the rich text component and when listening to html changes. The problem was temporarily solved. But another problem arose, that is, the table could not be displayed normally when inserted for the second time. We temporarily solved the problem by replace the span tag in the table in the html, but it seems that it did not solve it fundamentally.

I too can not get this to work. The table just disappears. Is this compatible with quill 2.0? The table just disappears on load. It works great if I add the table after load, but this is useless when I reload it.
First error is that it can't recognize the "html" variable.
Second error if I supply my own HTML for the variable as a temp solution, the range returns null and results in an error when subtracting its length from the delta length.
Any ideas how to get this to work?

Do you dependencies on react-quill or vue-quill or other?

I am using react-quill, so where should this code be placed?

@attoae hello，I am using react-quill, so where should this code be placed?

This library(react-quill) does not yet support Quill 2.0 version.
import { useEffect } from 'react';
import Quill from 'quill';
import QuillTableBetter from 'quill-table-better';
import 'quill/dist/quill.snow.css';
import 'quill-table-better/dist/quill-table-better.css';

Quill.register({
  'modules/table-better': QuillTableBetter
}, true);

const options = {
  theme: 'snow',
  modules: {
    toolbar: ['bold', 'italic', 'underline', 'strike', 'table-better'],
    table: false,
    'table-better': {
      language: 'en_US',
      menus: ['column', 'row', 'merge', 'table', 'cell', 'wrap', 'delete'],
      toolbarTable: true
    },
    keyboard: {
      bindings: QuillTableBetter.keyboardBindings
    }
  }
};

// The html here is sample data, the real data is what you get from the database.
const html = `

`;

function Editor() {
  useEffect(() => {
    const quill = new Quill('#editor', options);
    const delta = quill.clipboard.convert({ html });
    const [range] = quill.selection.getRange();
    quill.updateContents(delta, Quill.sources.USER);
    quill.setSelection(
      delta.length() - (range?.length || 0),
      Quill.sources.SILENT,
    );
    quill.scrollIntoView();
  }, []);

  return (

  );
}

export default Editor;

@attoae  thanks, but i am using react-quill-new, it used quill 2.0.  In addition, i save the delta mode in database, not html. so  i'm worried about data format incompatibility

@junjiebyr
function Editor() {
  const quillRef = useRef(null);
  useEffect(() => {
    if (quillRef.current) {
      const quill = quillRef.current.getEditor();
      const [range] = quill.selection.getRange();
      quill.updateContents(delta, Quill.sources.USER);
      quill.setSelection(
        delta.length() - (range?.length || 0),
        Quill.sources.SILENT,
      );
      quill.scrollIntoView();
    }
  }, [quillRef]);

  return (
    <ReactQuill ref={quillRef} theme="snow" modules={modules} />
  );
}

@attoae  Thank you for your patience. I'll try first

@attoae  Excuse me for bothering you. In my scenario, I want to switch between edit mode and read mode, and the styles are somewhat different. So, I have two ReactQuill components, and I hope to change the display when clicking a button. Also, I want to display tables in read-only mode, but it is not working at the moment. Can you help me take a look? here is my
demo:
https://codesandbox.io/p/sandbox/react-quill-vqk6hp

@attoae I used this code. But when i click the button, the table disappeared

@attoae I used this code. But when i click the button, the table disappeared

Using React 17. x, useEffect of React 18.x will be refreshed multiple times.
https://codesandbox.io/p/sandbox/react-quill-forked-tjkg6h?workspaceId=0c4517cd-7656-4829-916a-7231cb8e74d2


add changelog entry for GC improvements

Preview: https://dlang.dawg.eu/changelog.html#faster-gc-1
Could use some help with the wording and the image overlap.
If the screen is too narrow the image will simply go over the border, looks horrible on my mobile.

style="max-width: 100%" will fix the image width/overlap issue.

BTW you can preview mobile stuff in Firefox with Ctrl+Shift+M.

Nice trick, works like a charm.

I think you should give some information (e.g. in the title) on what platform the benchmark is done. I just happen to have generated this for Win32 showing more dramatic changes: GC Benchmark Win32
The slist and tree2 are way higher in dmd2.066 than shown, but that's probably due to false pointers.
BTW: I had to change the vdparser test to make it work for 2.066, should we commit that?

I had to change the vdparser test to make it work for 2.066, should we commit that?

Yes please, worked for me on 2.066.1, but the conmsg benchmark didn't.

The slist and tree2 are way higher in dmd2.066 than shown, but that's probably due to false pointers.

Yes, the slist and dlist benchmarks are quite unstable. Sometime the GC runs with a bigger heap (22MB instead of 16MB or something like that) making the tests run much faster. I wouldn't want to include those results.

updated

Yes please, worked for me on 2.066.1, but the conmsg benchmark didn't.

https://github.com/D-Programming-Language/druntime/pull/1185

updated

It still doesn't show the architecture. Linux/64 in the title should be enough.

Linux/64 in the title should be enough.

Updated.
Wondering though, who still uses 32-bit on linux. Might consume less memory, but only comes with half the registers.

Updated.

Thanks, looks good now.

Wondering though, who still uses 32-bit on linux. Might consume less memory, but only comes with half the registers.

 This might also have affected other benchmarks, e.g. slist and dlist.

Yeah it's hard to compare different compiler versions, because a lot of small things changed.
The slist and dlist benchmark should be fine though, because they hardly use phobos. They are unstable because the heap size sometimes differs (because of false pointers or something).

I weakened the statement a little, but it's still quite something we achieved here (especially for real-world apps) and we shouldn't be shy to say that.
<EMAIL_ADDRESS>Also tagged all pull requests with GC and linked to the full list of changes.

Looks better.now.


Includable Configs (ala gitlab ci)

Clear and concise description of the problem
As someone who has a number of small repos that all require similar CI config, I find gitlab's CI includes very useful.
This allows you to reference yaml documents in another repo and then they are included, and YAML merged, if multiples. This allows more composable pipelines, with more flexibility than the Woodpecker plugins (which are excellent, for some workflows).
gitlab include docs
https://docs.gitlab.com/ee/ci/yaml/includes.html
To use my own gitlab repos as an example:
I have a repo at gitlab.com/benyanke/common-ci-configs containing a number of composable CI bits that I use in various projects. One builds and pushes a docker container, one builds a hugo site, one publishes a hugo site to Netlify (a hosting provider), one publishes a hugo site to another provider, one lints, tests, and builds Golang projects, etc. On any given project, instead of needing to redefine all the required logic for a docker or go project, I simply include the go or docker include.
Suggested solution
Gitlab CI-like include functionality.
Alternative
No response
Additional context
No response
Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Quite right, it is. I did some digging, but that one didn't come up for me. I'll add my bits to that thread close this issue out.


Braintree::UnexpectedError: expected a gzipped response

While using fake_braintree, every action which creates a braintree request fails due to Braintree::UnexpectedError: expected a gzipped response. Although this may look like #48 i don't use redirects but instead server-to-server api.
How to reproduce this problem:
require 'fake_braintree'
FakeBraintree.activate!
result = Braintree::Customer.create(
    :credit_card => {
     :payment_method_nonce => Braintree::Test::Nonce::Transactable,
     :options => {
       :verify_card => true
     }
  }
)

And the backtrace
NoMethodError - undefined method `[]' for nil:NilClass:
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/customer.rb:113:in `generate_credit_cards_from'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/customer.rb:66:in `customer_hash'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/customer.rb:82:in `invalid_credit_card?'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/customer.rb:49:in `invalid?'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/customer.rb:16:in `create'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/fake_braintree-0.6.0/lib/fake_braintree/sinatra_app.rb:25:in `block in <class:SinatraApp>'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `block in compile!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `[]'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `block (3 levels) in route!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:985:in `route_eval'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `block (2 levels) in route!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1006:in `block in process_route'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `catch'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `process_route'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:964:in `block in route!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `each'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `route!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1076:in `block in dispatch!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `block in invoke'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `catch'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1073:in `dispatch!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `block in call!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `block in invoke'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `catch'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:886:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-1.6.0/lib/rack/nulllogger.rb:9:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-1.6.0/lib/rack/head.rb:13:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `block in call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1788:in `synchronize'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/capybara-2.4.4/lib/capybara/server.rb:19:in `call'
	/Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/rack-1.6.0/lib/rack/handler/webrick.rb:89:in `service'
	/Users/michal/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/webrick/httpserver.rb:138:in `service'
	/Users/michal/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/webrick/httpserver.rb:94:in `run'
	/Users/michal/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
Braintree::UnexpectedError: expected a gzipped response
from /Users/michal/.rvm/gems/ruby-2.1.5@my_gemset/gems/braintree-2.38.0/lib/braintree/http.rb:100:in `_body'

My setup
fake_braintree (0.6.0)
rails (4.2.0)
braintree (2.38.0)
ruby 2.1.5
Please feel free to to ask me for additional info. Thanks in advance guys!

Aha, I think I see the problem - fake_braintree assumes that a number is being passed in the :credit_card hash (in fake_braintree/lib/customer.rb):
new_credit_card_hash['bin'] = new_credit_card_hash['number'][0..5]

Since there is no number, it's doing nil[0..5], which crashes. fake_braintree doesn't support the new nonce-based API, but there's been some effort to support it in #82 and #61.
Sorry, we don't have a fix for this right now.

For now, the best solution is just to hit Braintree's sandbox environment :/

What a pitty, anyway thanks for your time

Does this mean this gem is depreciated with the current braintree API?

You can't create credit cards with a payment method nonce through a customer, although you can create both separately.

Hmmm, OK. Is there a way to hit the braintree servers for only tests that use that, and not the others that are supported by fake braintree?

I'd hate to have my tests be a ton slower every time because they have to hit braintree servers.
Maybe I could re-engineer my app to get around this...like create a customer beforehand, like when a user registers for his account, and get it out of the way.
But then I'd be creating customers for anyone who registers for a free trail, and creating an account will take longer and hit the braintree servers when it doesn't really need to yet.
Blah.

@greblass Or you could fork this gem, add the functionality you need, and then submit a PR back :)

I was waiting for that! Typical snarky open source maintainer response.
I doubt I have the skills is the problem.

I may be doing something wrong, but I'm still getting this error, even when just creating a payment method separately from a customer.
Going to just hit braintree servers and deal with the slowness for now. If I can find some time maybe I'll look into helping out here. I'll keep my eye on this from time to time. Maybe mark as not closed?

I don't know of a way to selectively turn off the fake, but it seems like it would be easy to do.
There are working examples of PaymentMethod.create in the specs. Only advice I can give without sample code.

I just realized another option - Just use transparent redirect instead of braintree.js. I'll just refactor my code to use that until this library has caught up with the new API.

One last thing I'd thought might be the issue - This would work in an RSpec controller right? Or does it have to be a capybara integration test to work?

Capybara is required. When you use this library you are still making web requests. They are just intercepted by fake_braintree.

I am using Capybara for my integration tests already, so its configured and available. Here is what I'm getting for Payment::Create (same thing that seems to be happening for the customer create above):
require 'fake_braintree'
FakeBraintree.activate!
result = Braintree::PaymentMethod.create(customer_id: 'abc123', payment_method_nonce: "fake-valid-nonce")

Braintree::UnexpectedError: expected a gzipped response

Backtrace:
NoMethodError - undefined method `merge' for nil:NilClass:
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/fake_braintree-0.7.0/lib/fake_braintree/sinatra_app.rb:208:in `block in <class:SinatraApp>'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1610:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1610:in `block in compile!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:in `[]'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:in `block (3 levels) in route!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:993:in `route_eval'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:in `block (2 levels) in route!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1014:in `block in process_route'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1012:in `catch'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1012:in `process_route'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:972:in `block in route!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:971:in `each'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:971:in `route!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1084:in `block in dispatch!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `block in invoke'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `catch'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `invoke'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1081:in `dispatch!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:906:in `block in call!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `block in invoke'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `catch'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:in `invoke'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:906:in `call!'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:894:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-1.6.4/lib/rack/nulllogger.rb:9:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-1.6.4/lib/rack/head.rb:13:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:181:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:2021:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1486:in `block in call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1795:in `synchronize'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/sinatra-1.4.6/lib/sinatra/base.rb:1486:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/capybara-2.4.4/lib/capybara/server.rb:19:in `call'
/Users/gregblass/.rvm/gems/ruby-2.2.2@brewlog/gems/rack-1.6.4/lib/rack/handler/webrick.rb:88:in `service'
/Users/gregblass/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service'
/Users/gregblass/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run'
/Users/gregblass/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread'
Braintree::UnexpectedError: expected a gzipped response

So, if this is just a matter of me not using the new braintree.js API and using the older Transparent Redirect API, then no worries, I'll downgrade my code so that I can test it. That should be the case, correct?

The nonce is meaningful, you can't just provided garbage.
You either have to create the nonce normally through the client, or use FakeBraintree::PaymentMethod.tokenize_card.

Gotcha. I thought that "fake-valid-nonce" was the same as Braintree::Test::Nonce::Transactable, which seemed kosher from the first example in this issue. Check out here: https://developers.braintreepayments.com/ios+ruby/reference/general/testing
So if you open up a console and type
Braintree::Test::Nonce::Transactable

you'll get:
=> "fake-valid-nonce"

So you're saying I can't use that? Any reason its OK to use in the first example here?

That's a guide for testing against the sandbox environment. There's testing data already built in to that. Not so with fake_braintree.

Ahhh. Thank you so much for clarifying.
Really it clicked for me by looking here: https://github.com/highfidelity/fake_braintree/blob/530502c59af4c35e4e23e8505c2bb6192855a31e/spec/fake_braintree/transparent_redirect_spec.rb
I can see how this is really intended to be used by looking at these specs.
Thanks for all your help!


Shortlist: First Attribute functionality clashing with Reflection Layerbox

When the user views a layout page, and they have a reflection in their layerbox, the "First Attribute" for the map is shown, BUT the reflection layer gets the "1" in the short list.
To recreate:
1.) if you have no previos reflections on Pancan12/GeneMap, then reflect anything from Pancan12/SampleMap -> Pancan12/GeneMap.
if you followed step 1, and a GeneMap automatically popped up, hit the browser refresh button.
If you did not need to follow step 1, simply visit the Pancan12/GeneMap page.
Notice that your last reflection has the "1", YET "Biclusters" is the displayed attribute. See picture Below:
From this point you may regain expected functionality by choosing a different "1" in the shortlist.

Can no longer re-create issue. Likely fixed sometime with manipulations to shortlist.


Cant get selectRow to work

Work perfectly without selectRow
Have tryd with and without bootstrap4 option and all removing other props.

Visit https://fb.me/react-error-boundaries to learn more about error boundaries.

HI @boomdrak  Did u use underscore in your codebase?

@boomdrak please open another issue to attach an example on codesandbox(Keep it simple and minimal) so that I can reproduce it. thanks. Let's close this


abut train corpus format

hello~
When I use this code to training a model, What format should be processed for the source corpus, the target corpus, the context corpus? are they  tokenized and BPE? Could u send me a demo about  it?
Thank u very mach.

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training  set is  LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my  parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training set is LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

My e-mali adr :

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training set is LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

My email<EMAIL_ADDRESS>

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training set is LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

My e-mali<EMAIL_ADDRESS>Thank you very mach

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training set is LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

My e-mail<EMAIL_ADDRESS>Thank you very mach

Using the same processing steps as standard NMT systems is OK (e.g. tokenization and BPE for English)
You may refer to the user manual at https://github.com/THUNLP-MT/THUMT for detail

thank u very much
I meet anther issue now, when I use THUMT code to train a standard sentence-level Transformer model,it achieved only 29 BLEU score in validation set and my training set is LDC zh-en corpus(2M sentence-pair), validation set is MT06, which is same as your paper,but haven‘t got same BLEU score(it is 48.09 in your paper).
So I guess my parameters setting maybe not same as yours ,under is mine,if it is impossible ,can u sent your parameter set?

It seems that you only use one reference in validation when NIST test sets have 4 references. Using more references will result in higher BLEU scores.


[Event Request] Code triguer Codeunit 12 (OnBeforeGLFinishPosting

In our localization scope we have withholding posting. So in Codeunit 12 on Code triger we have the following code that needs to be called:
          PostGenJnlLine(GenJnlLine,Balancing);
        end;

        if "Bal. Account No." <> '' then begin
          CODEUNIT.Run(CODEUNIT::"Exchange Acc. G/L Journal Line",GenJnlLine);
          PostGenJnlLine(GenJnlLine,not Balancing);
        end;
      //##############################
      IF WithholdingTaxPost.PostWithholdingTax(GenJnlLine,TaxGenJnlLine) THEN
    PostGenJnlLine(TaxGenJnlLine,Balancing);
      //##############################
        CheckPostUnrealizedVAT(GenJnlLine,true);

        CreateDeferralScheduleFromGL(GenJnlLine,Balancing);

        IsTransactionConsistent := FinishPosting(GenJnlLine);
      end;

      OnAfterGLFinishPosting(GlobalGLEntry,GenJnlLine,IsTransactionConsistent,FirstTransactionNo);
    END;

So I'd ask to be created an event OnBeforeGLFinishPosting (maybe?) so we can proceed with the development.

We already have event OnAfterGLFinishPosting(GlobalGLEntry,GenJnlLine,IsTransactionConsistent,FirstTransactionNo);

@AlexanderYakunin As showned above, our code posts. So it cannot be called OnAfter, and one of the reasons is that the consistency of the post wont be validated. Also we are in need of the parameter "balancing" to be sent.

I understand but not sure how to manage TaxGenJnlLine for new event. I don't know how you initialize this record. Can you please specify exactly how this event should look like (with parameters) and where it should be placed?

@AlexanderYakunin Thanks for yout answer. TaxGenJnlLine in our development is another instance of GenJnlLine. However, our team is discussing if this functionality shouldn't be refactored, so I would suggest to stand-by this issue and once we have a conclusion I'll get back to you again.


multi-tenant env support (weblogic-kubernetes-operator:4.2.8)

I am trying to deploy web-logic operator weblogic-kubernetes-operator:4.2.8 on OCP 4.16 multi-tenant env with dedicated domainNamespaceSelectionStrategy. However some roles like weblogic-operator-role , weblogic-operator-general fails RBAC permission issues.
Do we need to follow any specific guidelines for this multi-tenant type installation?
Also, do we need to add any namespace based custom roles to achieve this in multi-tenant env before proceeding installation?

@Krishnamotive, with the 3.x version of the operator, it was only required that someone with sufficient cluster privileges install the CRD document and then the rest of the installation could be done in a single namespace using the dedicated mode, as you described.
However, the 4.x operator added a schema conversion webhook to assist customers with upgrading from the v8 version of the domain resource schema to the v9 version and the new v1 cluster resource. Since we were only very rarely hearing requests for support of multitenant cluster environments, we elected to have the CRD always be installed by the endpoint serving the schema conversion webhook.
You can achieve something like the 3.x dedicated mode by having someone with sufficient cluster privileges install the webhook endpoint using the webhookOnly option. Then, you could install one or more operator instances in dedicated namespaces using the selection strategy and the operatorOnly option.
We are working on an enhancement that would allow you to skip installing the schema conversion webhook entirely. When this enhancement is available, we would have restored the 3.x behavior of just requiring the installation of the CRD documents (with a kubectl create -f) prior to a dedicated mode install of the operator.
Looping in @mriccell, who is our product manager.

The enhancement will be available in the next few weeks to about a month. I can't yet give you a better estimate because most of the WebLogic team is focused on completing the next version of the product (WebLogic 14.1.2)

@rjeberhard ,
I would like to inquire if it's possible to create namespace-specific RBAC roles separately and then bind them to the service account (using admin privileges for this step). Once created, we could use the following options, for example:
--set rbac.enabled=false --set serviceAccountName=weblogic-operator-sa.
I looked through the charts/templates but couldn't find an option to disable RBAC. Could you please confirm if the above approach is feasible?


Problems with insertable_into for table with underscore in name

I've a table called game_location.  I've some rust code looking like this:
 #[insertable_into(game_location)]
 pub struct NewGameLocation {
     pub name: String,
     pub league_id: i32
 }

Here's my up.sql migration:
CREATE TABLE game_location (
    id SERIAL PRIMARY KEY,
    name INTEGER NOT NULL,
    league_id INTEGER NOT NULL REFERENCES league(id)
);

I'm using insertable_into and diesel for 3 other tables and all went swimmingly.  Now I'm having issues with this particular one, but it's the first table with an underscore in the name.
Here is the error output:
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 error: the trait `diesel::expression::Expression` is not implemented for the type `collections::string::String` [E0277]
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14 #[insertable_into(game_location)]
                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 note: in this expansion of #[insertable_into] (defined in /home/freied/dev/git/league-api/db/src/repo/game_location.rs)
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 help: run `rustc --explain E0277` to see a detailed explanation
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 note: required by `diesel::expression::AsExpression::as_expression`
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 error: mismatched types:
 expected `diesel::expression::bound::Bound<diesel::types::Integer, &collections::string::String>`,
    found `&collections::string::String`
(expected struct `diesel::expression::bound::Bound`,
    found &-ptr) [E0308]
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14 #[insertable_into(game_location)]
                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 note: in this expansion of #[insertable_into] (defined in /home/freied/dev/git/league-api/db/src/repo/game_location.rs)
/home/freied/dev/git/league-api/db/src/repo/game_location.rs:14:1: 14:34 help: run `rustc --explain E0308` to see a detailed explanation
error: aborting due to 2 previous errors
error: Could not compile `league_db`.

Am I doing something incorrectly?  Thanks!

Ugh figured it out. INTEGER in sql code...

There actually is something I'd like to address here. That error message isn't as helpful as it could be. It should be something along the lines of ToSql<Integer, _> is not implemented for String

(Unsure if we can actually make that happen in this context though)


Crash when gif from document directory.

i have download the list of gif from server into my document directory.
now when i m going to display it crash.
mycode:
let imageData = NSData(contentsOfURL: NSURL(fileURLWithPath: dataPath))
let advTimeGif = UIImage.gifWithData(imageData!)
Crash at here::
var delayObject: AnyObject = unsafeBitCast(
CFDictionaryGetValue(gifProperties,
unsafeAddressOf(kCGImagePropertyGIFUnclampedDelayTime)),
AnyObject.self)

Are you still having this issue?
If yes, can you try the new v1.6.1 version and check if the problem persists?
We removed the unsafeAddressOf call, so hopefully this bug is fixed. If not, feel free to re-open! 🍻


[BUG] 官方热更新 Watcher总是重启服务失败

Execute the command and paste the result below.
Command: uname -a && php -v && composer info | grep hyperf && php --ri swoole
uname -a && php -v && composer info | grep hyperf && php --ri swoole
Linux ecs-a6f5 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
PHP 7.4.33 (cli) (built: Jan  3 2023 10:45:24) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Continue as root/super user [yes]?
hyperf/amqp                          v3.0.37   A amqplib for hyperf.
hyperf/async-queue                   v3.0.37   A async queue component for hyperf.
hyperf/cache                         v3.0.37   A cache component for hyperf.
hyperf/code-parser                   v3.0.37   A code parser component for Hyperf.
hyperf/codec                         v3.0.37   A codec component for Hyperf.
hyperf/collection                    v3.0.37   Hyperf Collection package which come from illum...
hyperf/command                       v3.0.37   Command for hyperf
hyperf/conditionable                 v3.0.37   Hyperf Macroable package which come from illumi...
hyperf/config                        v3.0.37   An independent component that provides configur...
hyperf/context                       v3.0.37   A coroutine/application context library.
hyperf/contract                      v3.0.37   The contracts of Hyperf.
hyperf/coordinator                   v3.0.37   Hyperf Coordinator
hyperf/coroutine                     v3.0.37   Hyperf Coroutine
hyperf/crontab                       v3.0.37   A crontab component for Hyperf.
hyperf/database                      v3.0.37   A flexible database library.
hyperf/db-connection                 v3.0.37   A hyperf db connection handler for hyperf/datab...
hyperf/devtool                       v3.0.37   A Devtool for Hyperf.
hyperf/di                            v3.0.37   A DI for Hyperf.
hyperf/dispatcher                    v3.0.37   A HTTP Server for Hyperf.
hyperf/engine                        v2.10.0   Coroutine engine provided by swoole.
hyperf/engine-contract               v1.9.0    Contract for Coroutine Engine
hyperf/event                         v3.0.37   an event manager that implements PSR-14.
hyperf/exception-handler             v3.0.37   Exception handler for hyperf
hyperf/filesystem                    v3.0.37   flysystem integration for hyperf
hyperf/flysystem-oss                 v1.2.1
hyperf/framework                     v3.0.37   A coroutine framework that focuses on hyperspee...
hyperf/guzzle                        v3.0.37   Swoole coroutine handler for guzzle
hyperf/http-message                  v3.0.37   microservice framework base on swoole
hyperf/http-server                   v3.0.37   A HTTP Server for Hyperf.
hyperf/logger                        v3.0.37   A logger component for hyperf.
hyperf/macroable                     v3.0.37   Hyperf Macroable package which come from illumi...
hyperf/memory                        v3.0.37   An independent component that use to operate an...
hyperf/migration-generator-incubator v0.4.3
hyperf/model-cache                   v3.0.37   A model cache component for hyperf.
hyperf/model-listener                v3.0.37   A model listener for Hyperf.
hyperf/paginator                     v3.0.37   A paginator component for hyperf.
hyperf/pipeline                      v3.0.37   Hyperf Macroable package which come from illumi...
hyperf/pool                          v3.0.37   An independent universal connection pool compon...
hyperf/process                       v3.0.37   A process component for hyperf.
hyperf/rate-limit                    v3.0.37   A rate limiter implemented for Hyperf or other ...
hyperf/redis                         v3.0.37   A redis component for hyperf.
hyperf/serializer                    v3.0.37   A serializer component for Hyperf.
hyperf/server                        v3.0.37   A base server library for Hyperf.
hyperf/snowflake                     v3.0.37   A snowflake library
hyperf/stringable                    v3.0.37   Hyperf Stringable package which come from illum...
hyperf/support                       v3.0.37   A support component for Hyperf.
hyperf/tappable                      v3.0.37   Hyperf Macroable package which come from illumi...
hyperf/testing                       v3.0.37   Testing for hyperf
hyperf/token-bucket                  v2.0.0    Implementation of the Token Bucket algorithm.
hyperf/translation                   v3.0.37   An independent translation component, forked by...
hyperf/utils                         v3.0.37   A tools package that could help developer solve...
hyperf/validation                    v3.0.37   hyperf validation
hyperf/watcher                       v3.0.37   Hot reload watcher for Hyperf
hyperf/websocket-server              v3.0.37   A websocket server library for Hyperf.
tangwei/dto                          v2.1.10   php hyperf dto

swoole

Swoole => enabled
Author => Swoole Team<EMAIL_ADDRESS>Version => 4.8.13
Built => May 22 2023 16:33:47
coroutine => enabled with boost asm context
epoll => enabled
eventfd => enabled
signalfd => enabled
cpu_affinity => enabled
spinlock => enabled
rwlock => enabled
sockets => enabled
openssl => OpenSSL 1.0.2k-fips  26 Jan 2017
http2 => enabled
json => enabled
curl-native => enabled
pcre => enabled
c-ares => 1.10.0
zlib => 1.2.7
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled
mysqlnd => enabled
async_redis => enabled

Directive => Local Value => Master Value
swoole.enable_coroutine => On => On
swoole.enable_library => On => On
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => On => On
swoole.unixsock_buffer_size => 8388608 => 8388608```

### Description:
会出现以下错误
PHP Fatal error:  Swoole\Server::start(): failed to start server. Error: ListenPort::listen(): listen(<IP_ADDRESS>:9501, 512) failed, Error: Address already in use[98] in /www/wwwroot/btm_Backend/vendor/hyperf/server/src/Server.php on line 50

In Server.php line 141:

  failed to listen server port[<IP_ADDRESS>:9501], Error: Address already in use[9
  8]

### Steps To Reproduce:

需要检查你的服务有没有收到信号以后依旧没有结束的
使用信号处理器来清理掉


Improve entering points experience

Ideas
Circular picker
Use a + and - button to show a circular number picker and add or subtract respectively the number picked on the wheel
Examples:

https://pub.dev/packages/progressive_time_picker
https://pub.dev/packages/time_range_picker

Circular action menu
Use a + and - button to expand more buttons in a circle. These buttons would be +1, +2, +3, +5, +10 etc.
Examples

https://pub.dev/packages/circular_menu
https://pub.dev/packages/flutter_radial_menu

Hey, just wanted to pop in here and say that the new "point entering" UI is really good! Wanted to make sure I used it plenty before giving some feedback. It is very smooth, and I actually like it a lot more than a standard keyboard entry. Great job!

Hey @BAT754, thanks a lot for you feedback. I'm glad to hear that you're liking it. It was a bit of a gamble on my end because I don't have proper testing group of users and wasn't sure if it's going to work for others. I did a bit of a research on the entering points apps and the spinning wheel and + and - quick buttons seemed to be the highest ranked and rated apps.


HA : Kube proxy doesn't support multiple apiservers

https://github.com/kubernetes/kubernetes/issues/18174

Workarounded with an external loadbalancer.
Waiting for a new release of kubernetes which will support it.

Actually the kubelet proxy doesn't talk to multiple api's as it is mentionned in the issue https://github.com/kubernetes/kubernetes/issues/18174, it just takes the first one available.
I'll rename this issue because we still need ha for both components (kube-proxy and kubelet)

In the kubernetes roadmap for 1.3, i need to check where i've seen this info

@mattymo

Here is the scheme to cover internal HA endpoints for K8s cluster https://www.lucidchart.com/documents/view/be302c9e-bea6-4e2a-ac10-9b5fd049f8ac


Minimal windows build

coverage: 94.007%. remained the same
when pulling ef1acec2a254280482ffb699b89886955138b344 on windows
into 1a171bbb7f03960ae31642e9bab572a7f8cd6124 on main.


fix: Ga4gh tes bugfixes

Description
This PR contains two bugfixes

Adds missing py-tes package, which is required for GA4GH job submission
Resolve bug with remote log or benchmarkfiles

QC

[ x] The PR contains a test case for the changes or the changes are already covered by an existing test case.
[ x] The documentation (docs/) is updated to reflect the changes or this is not necessary (e.g. if the change does neither modify the language nor the behavior or functionalities of Snakemake).

Thank you!


Support for new shard of oss.sonatype - s01.oss.sonatype.org

Hi,
According to https://central.sonatype.org/articles/2021/Feb/23/new-users-on-s01osssonatypeorg/ new users are given access to s01.oss.sonatype.org and have to perform publishing through this server. This issue emerged also on sbt-sonatype repository: https://github.com/xerial/sbt-sonatype/issues/214
I think the solution presented by @steinybot  in https://github.com/xerial/sbt-sonatype/pull/215 is quite good.
I will be happy to contribute that change, but before jumping into the code I would like to hear your opinion.
Cheers,
Kasper

Hi, thanks for the tip. It indeed worked. For any future readers here is what I did:
trait MyPublishModule extends PublishModule {
  def sonatypeUri: String = "https://s01.oss.sonatype.org/service/local"

  def sonatypeSnapshotUri: String =
    "https://s01.oss.sonatype.org/content/repositories/snapshots"
}

Unfortunately, this configuration isn't being picked up when using publishAll syntax and has to be duplicated:
./mill -i mill.scalalib.PublishModule/publishAll --publishArtifacts __.publishArtifacts --sonatypeUri "https://s01.oss.sonatype.org/service/local"

Is there any way to workaround that?


[resolves #445] Read the demo charts under the 'org.knowm.xchart.demo.charts' package and add them to ExampleChartTester and XChartDemo

DemoChartsUtil reads the demo charts under the 'org.knowm.xchart.demo.charts' package from local class files or xchart-demo-xxx.jar, without having to add a new demo chart each time, modify ExampleChartTester and XChartDemo class.
The ExampleChart interface add a method getExampleChartName, which changes more classes.
Different types of charts, sorting changes, sort alphabetically.
Before:

Now:

great!


fix long delay utp bootstrap accept

Starting the accept call into a different thread.

This change is

r? @canndrew
(maidsafe_highfive has picked a reviewer for you, use r? to override)

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


Please we want to use fields marked "This is never displayed in normal meeting searches."

Currently the "OBSERVER" user can only see information in hidden fields (those marked "This is never displayed in normal meeting searches.") if they are signed in to the ROOT SERVER (like at https://my/root/server/main_server/).
We would like our local OBSERVERS, who can only see meeting information but not make changes, to view hidden information.  The original intent of Observers was so that people manning the Help Line other such trusted servants could have extra info not available to the viewing public.  This is a perfect use of the Observer position, and use of the hidden information.
Currently our Observers do enjoy the different layout and map with pins they get when logging in to our local BMLT server.
But we would love to make use of those hidden fields to include secret info like "Tom R. holds the key to the church, his number is xxx-xxx-xxxx" Or "Lisa F. lives nearby and is willing to give rides, her number is xxx-xxx-xxxx".

Hi Ginger. What is the actual problem you are trying to solved? Are you requesting a way for volunteers to find contact info for local groups that they’re referring the callers to?

Was it intended that this ticket was created on this project?  Or were you referring to the https://github.com/bmlt-enabled/bmlt-root-server?  Or both?

I asked her on FB to create it here, because the value she's looking for is related to fielding phone calls. I also said that it may get implemented somewhere besides Yap, but that this is the right place to start the discussion, since it's primarily yap users (volunteers) they benefit.

The original discussion was around volunteers getting access to what's in the hidden fields in the root server so that they can better connect callers with local resources.
My personal opinion is that this shouldn't be implemented in the root server - the root server should just be for CRUD operations and querying via API. I do not know if it should be part of Yap or some new thing.

I do see value in it, but the meeting information would not be pulled in Yap ever.  The information is relevant to meetings, information volunteers need to access.  If anything there should be a way to login as an observer and then reload a crouton page and see the information (or other apps).  I feel this is the right approach, because most helplines are not on yap.

The cookie from the login, would essentially act as the "token" for the API response to show the additional information.  Assuming they are accessing from the same browser.

Yeah, I think I agree with you. There could be a new WP plugin basically wraps crouton. It could prompt for a login page, and after you authenticate show meetings with hidden data.

This could be part of crouton essentially.  A first pass, I would not build the login page right away.  Crouton would be modified to display the "hidden" fields as part of the data template.  Because you are logged in as an observer, those data points should appear.  If you aren't they are invisible.  If there is enough interest in the feature, build out the login as a convenience feature.  I wouldn't go and build a login until we know if there is traction.

I like it

This is trivial.  I could code this up in a few hours.

Moving this ticket to crouton.


Yaml parsing rebase

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

@OfficialEsco  I'd like to rebase the YamlParsing branch on the Microsoft master branch.
The YamlParsing file hasn't changed at all -
PS D:\Git\winget-pkgs> git diff YamlParsing YamlParsingRebase -- .\Tools\YamlCreate.ps1

PS D:\Git\winget-pkgs>

This would just be pulling in the last 1700 or so commits. I'd appreciate if you could review and make sure I didn't mess up the rebase before I merge all of the commits in

noooot sure what you want me to look at that you cannot see your self 😁

noooot sure what you want me to look at that you cannot see your self 😁

Sometimes I just like a second set of eyes just to be sure;

Edit:
Also you should open this repo for issues so we can request/discuss ideas
For example we need to remove the en-US requirement from the Installer, which i tried to fix but i believe null is not a valid variable so it failed

It is a public repo; It's just that you and I are the only ones with write access

You have to enable Issue in the settings 😬

Kinda hard when 4k+ different changes 😁git rebase usually don't cause issues other than a random merge commit that comes at the end for some reason

You have to enable Issue in the settings 😬

Ahh, I missed those checkboxes. Should be enabled now


Clarify order of commands to start using the mod

Because the three parts of modROS are distributed across three different repositories, it can be difficult to figure out the sequence of commands to get everything working.
We should provide a high-level overview/summary in the readme in FS19_modROS to guide new users.

Related: https://github.com/tud-cor/fs_mod_ros_windows/issues/3.


Barrows enhancments

This will add a toggle to highlight the ladder tiles even when they are not visible.
Also adds a config for changing the color of the operable doors in the catacombs to support color blind users.
Note: I have not tested this yet. I will test when I am able. If someone wants to give it a go and let me know that would be awesome.
Suggested in issue: #3385
Fixes issue: #3268

I don't see why we'd need to let users change the color of things like door and ladder markers? I understand flexibility, but I feel like there's a point where it might get a bit too much.


minor updates to obsolete how to guide

add instruction to link to GitHub ticket via seeAlso
minor formatting updates

closing this in favor of https://github.com/OBOAcademy/obook/pull/239


cigien: Watch agrobloggers.com

cigien requests the watch of the watch_keyword agrobloggers\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

agrobloggers\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

agrobloggers\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by tripleee in Charcoal HQ

Approved by tripleee in Charcoal HQ


[TEVA-2036] Redirect to dashboard if job application already exists

Jira ticket URL
https://dfedigital.atlassian.net/browse/TEVA-2036
Changes in this PR

If a draft or submitted application already exists for a jobseeker and a vacancy, redirect to the applications dashboard!

Review app deployed to https://teaching-vacancies-review-pr-3017.london.cloudapps.digital


"https://github.com/vmware-tanzu/service-installer-for-vmware-tanzu/blob/main/docs/product/release/vSphere - Backed by NSX-T/tkoVsphereNSXT.md#deploying-vmware-tanzu-for-kubernetes-operations-on-vsphere-with-nsx-t-using-service-installer-for-vmware-tanzu" page have an incorrect info

Bug description
Picture shows that the shared services cluster should be on a different network segment but under pre-requirement section (point 1), says that shared services cluster should be on the same management network.
Expected behavior
Pre-requirement should be updated to reflect the picture networking.
Steps to reproduce the bug

Open page "https://github.com/vmware-tanzu/service-installer-for-vmware-tanzu/blob/main/docs/product/release/vSphere - Backed by NSX-T/tkoVsphereNSXT.md#deploying-vmware-tanzu-for-kubernetes-operations-on-vsphere-with-nsx-t-using-service-installer-for-vmware-tanzu" and look for point 1 under pre-requirements

Version (include the SHA if the version is not obvious)
SIVT
Environment where the bug was observed (vSphere+VMC, vSpshere+DVS, vSphere+NSXt, etc)
vSphere with NSXT

Service Installer for VMware Tanzu version: 1.1.1
vSpshere version: Na
vCenter version: NA
Kubernetes version: (use kubectl version):
Kubernetes installer & version:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Sonobuoy tarball (which contains * below)

Relevant Debug Output (Logs, manifests, etc)

@dineshtripathi30 Thanks for reporting this, documentation is updated as part c77048d89a2a69c84ebf4d75c059efb4f2c74252 commit.


package.json main should point at the pre-built version of the script

The dist folder should be tracked and the "main" script in package.json should point to dist/js-data-express.js.
I noticed this was how js-data/js-data was set up. Was there a reason for not doing the same with this repo?
Thanks!

Fixed in bc69458


VS 2019 information on Network Profiler

Is Network Profiler for UWP available in VS 2019? If so how to install it?
The page doesn't have information specific to VS 2019 and the tool is missing in VS 2019.

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

ID: 5a70e435-8c99-5920-d2a2-5c6e1f85772d
Version Independent ID: e1aa7f86-2d39-6109-e4f7-7bb0d441a9ca
Content: Analyze network usage in UWP apps - Visual Studio
Content Source: docs/profiling/network-usage.md
Product: visual-studio-windows
Technology: vs-ide-debug
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@vborovikov -- Vadislav, thanks for your question. It looks like you're having an issue with the product itself, rather than an issue with the documentation. Here are a few options where you might consider asking your question:

https://social.msdn.microsoft.com/Forums/vstudio
https://www.stackoverflow.com
https://www.reddit.com/r/VisualStudio/

As well, you might also consider using the Report a Problem tool to report the issue.

@WilliamAntonRohm this is a question about the docs being out-of-date with the latest version of the product.
There is no 'network' option listed in the tooling in VS2019 for a UWP app. If this feature was removed, this doc should specify so. If this feature was changed to something like the 'Event Viewer' option, then it should be updated to match the current experience:

However, even performing a trace with the Event Viewer option, I didn't see any of my HTTP events I would have expected.

@michael-hawker -- Michael, thank you for clarifying.
@Mikejo5000 -- Mike, please look into this issue.

The version selector indicates it's VS 2017 only. There's a banner comment when you switch to the VS 2019 view. This tool isn't available in VS 2019.

@Mikejo5000 the banner saying the page not existing isn't clear enough saying the feature was removed for some reason and how developers migrating to VS 2019 should perform the same scenario with the missing feature.
It'd be better if the same document existed for VS 2019 still and clearly explained that the feature was removed, why, and how to migrate to some other solution for the same task.