Unable to load dynamic library '/root/phpkafka/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0

when i 'make' phpkafka, it occured the followed issue:
[root@OA-test phpkafka]# make test
Build complete.
Don't forget to run 'make test'.
PHP Warning: PHP Startup: Unable to load dynamic library '/root/phpkafka/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library '/root/phpkafka/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/root/phpkafka/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library '/root/phpkafka/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0
how can i solve it??? please help me

@yunkaiyueming The problem is that this extension, ATM still requires you to specify what partition to consume from. I'm working on a fix for that, though. for now, you can use my fork (consume-with-meta branch), which adds a couple of methods like getPartitionsForTopic that enable you to set the partition correctly before consuming

@EVODelavega Do you have an estimate on when you will merge that fork's features? Thank you very much!

salebab's repo has been abandoned, I've forked it and I'm developing it
further. Currently, the consume-with-meta branch is the one that is most
up-to-date. If you have any issues/suggestions, you can create an issue on
my fork, as my changes will probably not get merged (there's a PR ready and
waiting, but the owner, salebab, hasn't merged them, instead, he's updated
the README file, linking to my fork).
If you want, you can use my fork for testing, mind you, it's far from being
stable
On Tue, Apr 7, 2015 at 11:48 PM, eparisca<EMAIL_ADDRESS>wrote:

@EVODelavega https://github.com/EVODelavega Do you have an estimate on
when you will merge that fork's features? Thank you very much!
—
Reply to this email directly or view it on GitHub
https://github.com/salebab/phpkafka/issues/6#issuecomment-90742146.

@EVODelavega
Hi  EVODelavega,
I installed phpkafka in CentOS 6.5 by these commands:
ldconfig
/usr/bin/phpize
./configure --enable-kafka --with-php-config=/usr/bin/php-config
make
make install
then I can see kafka.so under /usr/lib64/php/modules.
but when I executed 'service php-fpm restart',  it told me:
Starting php-fpm: [16-Oct-2015 17:07:23] NOTICE: PHP message: PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/kafka.so' - librdkafka.so.1: cannot open shared object file: No such file or directory in Unknown on line 0
I have tried export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib as well, but it still not work.
Could you give me some suggestion about it?
Thanks!

@siyuanmami Not sure, I know there were some issues with building librdkafka on CentOS some time ago, so maybe you want to check the issues on edenhill's librdkafka repo. So far, I've only tested the extension on debian, Slackware, mint and ubuntu. I haven't seen the issue you're reporting on any of those systems, though

@EVODelavega
Thanks for your help.
I have confirmed with edenhill about it, I should have installed librdkafka library correctly.
Not sure if it is because I am using php-fpm.
I used to install this extension on ubuntu worked with apache, it is fine.
Thanks!

@siyuanmami php-fpm shouldn't be an issue. AFAIK, it handles the MINIT, RINIT, RSHUTDOWN and MSHUTDOWN cycles in exactly the same way, and as it stands, there's very little in the module init and shutdown functions that could trip PHP up. But having said that: what version are you currently using? What repo, what branch?

@EVODelavega This seems to come up quite often, librdkafka.so.1 not being in the library search for the PHP invociation and people dont really know how to fix it, so may I suggest you add some instructions in README?

@EVODelavega
Thanks you for you help!
I have installed the php extension successfully after I updated /etc/ld.so.conf to include /usr/local/lib !

Perfect

@edenhill Done, added some instructions that should be rather dummy-proof to the README on current master

Thanks @the100rabh your solution helped me get kafkacat working.

I fixed it finally on CentOS 7!! For both CLI and FPM
echo '/usr/local/lib' > /etc/ld.so.conf.d/kafka.conf
echo 'export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib64/php/modules:/usr/local/lib"' >> /etc/profile
ldconfig

@abdollahpour
I had tried above command that you told but that is also not working.
Still I am getting same error.
Could you please tell me what else step you taken to resolve that issue.
Thank You!!!


Turn off 'unicorn/no-nested-ternary'

Fix #110

@lydell Updated. I just accidentally used a work account, so I force pushed. Sorry about that.

Thanks! It turned out easier to do it myself in the end, so that’s what I ended up doing.


PHP Deprecated:  The ability to pass file names to Yaml::parse() was deprecated in 2.7

When running behat, getting error:
PHP Deprecated:  The ability to pass file names to Yaml::parse() was deprecated in 2.7 and will be
removed in 3.0. Please, pass the contents of the file instead. in
/vendor/symfony/yaml/Symfony/Component/Yaml/Yaml.php on line 58

Whats up?

Fixed here: https://github.com/Behat/Behat/commit/7192c4eb862b0a82a6dd19501d9b3b4dc1aa86ef

Still getting the exact same error, except it says "deprecated in 2.2" and comes as a warning (so, not really an error).
I'm on a mac, if it's any relevant. Not sure how to find the file from the fix above, I believe it's compiled in the binary and can't verify my binary version, maybe due to #475 .
Maybe I got an outdated version, somehow?

Which version of Behat are you using ?
If it is installed through composer, use composer show -i behat/behat to show the info about the installed version of the package

Thanks for the hint!
I've never heard of Behat, Mink or Composer before installing all of them using this guide. It is 2.4.6 I think. PHP 5.3 and gherkin 2.2.9 are clear. And I actually had to use php composer.phar show -i behat/behat. My composer.json had this: "behat/behat": "2.4.*@stable",
Now I'm trying to see how to properly update this... Since this fix is for version 3.

Behat 2.4 is more than 2 years old. This version is not maintained anymore and has indeed not been updated to avoid deprecations.
Use either Behat 2.5 or 3 (both have been fixed)

Regarding composer vs php composer.phar, it is a matter of having composer available globally in your system, or downloading it in the project. I always use a global composer, which is why I give it this way


dilation: add half-close support

The upcoming "dilation" feature offers multiple "subchannels" all multiplexed over a single durable+abstract connection.
As I'm rewriting the file-transfer protocol to use these subchannels, I'm discovering that it would be really handy if they were half-closeable. In the original FTP protocol (RFC959, written 34 years ago) they'd use one TCP connection per file and just read until the socket was closed, instead of sending a length ahead of time and then fetching exactly that number of bytes. This is also how HTTP/1.0 worked, before Length: headers. It has the advantage of not needing to calculate the transfer size ahead of time (which is extra work when compression or aggregation is involved, and which required a new Encoding: chunked to work with HTTP/1.1).
For MW+Dilation transfers, I'm thinking we use one subchannel per file transfer. The first thing across the subchannel is a length-prefix and header, which tells the remote side:

the filename to store it under
the encoding to be used: single file or tarball of a directory, maybe some kind of compression
an estimated size, maybe pre-compression

Then the sender just streams the (maybe encoded) data, perhaps pausing when the receiver uses the producer/consumer API, and when they've sent the last byte, the sender half-closes the subchannel. The receiver observes the half-close and wraps things up, then sends back an ACK message with a hash of the received data. When the sender gets the ACK, they can check the hash to tell the user that the transfer succeeded.
When sending a directory, the estimated size could be a du -s of the disk. The receiver can count bytes written to disk (rather than bytes read from the subchannel, which might be compressed), and the progress bar will be mostly accurate. But the transfer will still work even if the estimated size is wrong; the only consequence will be that the progress meter will end too early or too late.
If we didn't have half-close, we'd need to be very precise about when the transfer is complete. For single files and no compression, we know ahead of time exactly how many bytes will be sent over the wire, so the header can specify that, and the receiver can hang up after receiving that many bytes. With compression, we'd either need to compress the file ahead of time to get the wire-size up front (expensive), or we'd use the uncompressed size from disk and have the receipient count the bytes coming out of the decompressor (and we'd have to flush the decompressor after every chunk, also expensive). With directories, we'd have the same dilemma.
The API for this should match the standard Twisted interfaces. The ability to half-close is activated by attaching a Protocol which implements (twisted.internet.interfaces.) IHalfCloseableProtocol to the subchannel. If you do that, then you are allowed to call self.transport.loseWriteConnection() instead of (or in addition to) the usual loseConnection(). And the protocol will be notified about p.readConnectionLost() and p.writeConnectionLost() instead of (or in addition to??) the usual p.connectionLost().
I'm still trying to figure out the instead-of vs in-addition-to questions. I'm looking at the original Twisted ticket for half-close (from 2003!) for hints, since the feature is somewhat underdocumented.

Testing with Twisted-19.2.1 and a localhost TCP socket tells me:

a half-closeable protocol which doesn't write anything but does loseWriteConnection will get an immediate writeConnectionLost. Later, when the other side closes too, it gets a readConnectionLost. At no point does it get a plain connectionLost.
the same thing happens when it gets readConnectionLost first, and then later does loseWriteConnection
doing loseWriteConnection and then doing more writes doesn't seem to provoke an error, as far as I can tell the writes are just ignored
if a half-closeable protocol does a plain loseConnection, they get a connectionLost, but neither writeConnectionLost nor readConnectionLost
if the other side does a full loseConnection, we first see readConnectionLost, then if we keep writing, we'll get connectionLost after a few packets get back RST. At no point do we get writeConnectionLost
if you get readConnectionLost and then do a normal loseConnection, you get back connectionLost instead of writeConnectionLost

So it seems that writeConnectionLost only happens in response to you doing loseWriteConnection. And loseConnection will get you a connectionLost in both half-closeable and regular Protocols.
I'm not sure how much of this we should emulate. It feels like protocols should either be half-closeable (and only use loseWriteConnection and only expect writeConnectionLost/readConnectionLost, and never expect connectionLost), or non-half-closeable (and only use loseConnection, and only expect connectionLost). But at least two case appears to violate this rule.
For now, I'm going to proceed as if that ideal is maintained, except I'm also going to call connectionLost after the last of both readConnectionLost and writeConnectionLost have been called. I'll put some asserts in place to catch cases where one type of protocol calls the wrong methods. Hopefully we can find some more docs on IHalfCloseableProtocol in the future.

For reference, here's the testing tool:
from __future__ import print_function, unicode_literals
import sys
from twisted.python import usage
from twisted.internet.endpoints import clientFromString, serverFromString
from twisted.internet.defer import Deferred
from twisted.internet.task import react, LoopingCall
from twisted.internet.protocol import Protocol, Factory
from twisted.internet.interfaces import IHalfCloseableProtocol
from zope.interface import implementer

from twisted.python import log
log.startLogging(sys.stderr)

class Options(usage.Options):
    def parseArgs(self, mode, *args):
        if mode not in ["tx", "rx"]:
            raise usage.UsageError("mode must be 'tx' or 'rx', not '%s'" % mode)
        self.mode = mode
        self.args = args

@implementer(IHalfCloseableProtocol)
class ReceiveProtocol(Protocol):
    def __init__(self):
        super(Protocol, self).__init__()
        self._rx = 0

    def connectionMade(self):
        print("RP.connectionMade")

    def dataReceived(self, data):
        old = self._rx
        self._rx += len(data)
        print("RP.dataReceived %d+%d=%d" %(old, len(data), self._rx))
        if self._rx == 2:
            print("RP.loseWriteConnection")
            self.transport.loseWriteConnection()
            #print("RP.loseConnection")
            #self.transport.loseConnection()

    def readConnectionLost(self):
        print("RP.readConnectionLost")

    def writeConnectionLost(self):
        print("RP.writeConnectionLost")

    def connectionLost(self, why=None):
        print("RP.connectionLost")

@implementer(IHalfCloseableProtocol)
class SendProtocol(Protocol):
    def __init__(self):
        super(Protocol, self).__init__()
        self._rx = 0
        self._tx = 0

    def connectionMade(self):
        print("SP.connectionMade")
        self.lc = LoopingCall(self.do_write)
        self.lc.start(1.0, False)

    def do_write(self):
        print("SP.write %s+1=%s" % (self._tx, self._tx+1))
        self._tx += 1
        self.transport.write(b"a")
        if self._tx == 6:
            print("SP.loseWriteConnection")
            self.transport.loseWriteConnection()
            #print("SP.loseConnection")
            #self.transport.loseConnection()

    def dataReceived(self, data):
        old = self._rx
        self._rx += len(data)
        print("SP.dataReceived %d+%d=%d" %(old, len(data), self._rx))

    def readConnectionLost(self):
        print("SP.readConnectionLost")

    def writeConnectionLost(self):
        print("SP.writeConnectionLost")

    def connectionLost(self, why=None):
        print("SP.connectionLost")

class InstanceFactory(Factory):
    def __init__(self, instance):
        super(Factory, self).__init__()
        self.instance = instance
    def buildProtocol(self, addr):
        return self.instance

def open(reactor, options):
    if options.mode == "tx":
        ep = clientFromString(reactor, "tcp:localhost:6777")
        ep.connect(InstanceFactory(SendProtocol()))
    else:
        ep = serverFromString(reactor, "tcp:6777")
        ep.listen(InstanceFactory(ReceiveProtocol()))
    return Deferred()

def run():
    options = Options()
    options.parseOptions()
    return react(open, (options,))

run()


ListItem right title

Having to set title/word/avatar on the right of the ListItem would be great instead of restricting to icons.

Looks great! Thanks @dabit3


Getting "Creating UObjects while Collecting Garbage is not allowed!" when LoadSkeletalMeshRecursiveAsync is invoked from background thread.

I'm getting this random crash when UglTFRuntimeAsset::LoadSkeletalMeshRecursiveAsync() is invoked from a lambda running on a background thread (std::thread):
Assertion failed: !IsGarbageCollecting() [File:E:/UnrealEngine/UE_Main/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp] [Line: 2367] Unable to create new object: AssetImportData /Engine/Transient.SkeletalMesh_0.AssetImportData. Creating UObjects while Collecting Garbage is not allowed!

UE4Editor_Core!AssertFailedImplV() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:104]
UE4Editor_Core!FDebug::CheckVerifyFailedImpl() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:461]
UE4Editor_CoreUObject!<lambda_2bcb0bc4dbc924c8a72f269ef2bcdaae>::operator()() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2366]
UE4Editor_CoreUObject!StaticAllocateObject() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2366]
UE4Editor_CoreUObject!StaticConstructObject_Internal() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:3229]
UE4Editor_Engine!USkeletalMesh::PostInitProperties() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\Engine\Private\SkeletalMesh.cpp:449]
UE4Editor_CoreUObject!FObjectInitializer::PostConstructInit() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2891]
UE4Editor_CoreUObject!FObjectInitializer::~FObjectInitializer() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:2744]
UE4Editor_CoreUObject!StaticConstructObject_Internal() [E:\UnrealEngine\UE_Main\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:3235]
UE4Editor_glTFRuntime!FglTFRuntimeSkeletalMeshContext::FglTFRuntimeSkeletalMeshContext() [D:\wkspaces\MyProject\Plugins\MyGame\Social\glTFRuntime\Source\glTFRuntime\Public\glTFRuntimeParser.h:783]
UE4Editor_glTFRuntime!FglTFRuntimeParser::LoadSkeletalMeshRecursiveAsync() [D:\wkspaces\MyProject\Plugins\MyGame\Social\glTFRuntime\Source\glTFRuntime\Private\glTFRuntimeParserSkeletalMeshes.cpp:1210]
UE4Editor_glTFRuntime!UglTFRuntimeAsset::LoadSkeletalMeshRecursiveAsync() [D:\wkspaces\MyProject\Plugins\MyGame\Social\glTFRuntime\Source\glTFRuntime\Private\glTFRuntimeAsset.cpp:306]
UE4Editor_MyGame!<lambda_92d524716833cd50d8d71ef497b5b91a>::operator()() [D:\wkspaces\MyProject\Plugins\MyGame\Social\MyGame\Source\MyGame\CharacterAvatarLoader\CharacterAvatarLoader.cpp:592]
UE4Editor_MyGame!journee::utility::PriorityThreadPool::processJob() [D:\wkspaces\MyProject\Plugins\MyGame\Social\MyGame\Source\MyGame\Utility\PriorityThreadPool.cpp:126]
UE4Editor_MyGame!std::thread::_Invoke<std::tuple<std::_Binder<std::_Unforced,void (__cdecl journee::utility::PriorityThreadPool::*)(unsigned int),journee::utility::PriorityThreadPool *,unsigned __int64 &> >,0>() [C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\INCLUDE\thread:56]
ucrtbase
kernel32
ntdll

I'm not entirely sure how shall I avoid this? Do I need to check every time for garbage collection before lambda is executed? Seems like a lot of additional checking and code (for postponing lambda execution). There must be some other way of doing it in Unreal maybe?

Hey. I know this is an old issue, but we also encountered GC problems importing skeletal meshes in our project.
The main problem seems to be that the glTFRuntimeParser gets kicked off to a worker thread when calling the async API, but internally it creates and references various UObjects internally, which is problematic in Unreal. UObjects should only really be handled on the game thread. We worked around this locally, by moving the call to FglTFRuntimeParser::FromFilename back to the game thread, while keeping the task completion async in UglTFRuntimeFunctionLibrary::glTFLoadAssetFromFilenameAsync
like this:
`void UglTFRuntimeFunctionLibrary::glTFLoadAssetFromFilenameAsync(const FString& Filename, const bool bPathRelativeToContent, const FglTFRuntimeConfig& LoaderConfig, const FglTFRuntimeHttpResponse& Completed)
{
UglTFRuntimeAsset* Asset = NewObject();
if (!Asset)
{
Completed.ExecuteIfBound(nullptr);
return;
}
Asset->RuntimeContextObject = LoaderConfig.RuntimeContextObject;
Asset->RuntimeContextString = LoaderConfig.RuntimeContextString;

// Annoying copy, but we do not want to remove the const
FglTFRuntimeConfig OverrideConfig = LoaderConfig;

if (bPathRelativeToContent)
{
	OverrideConfig.bSearchContentDir = true;
}

// The parser is currently creating and referencing various UObjects, so it may not run on a worker thread,
// or it will interfere with the GC. See also related open Github issue: https://github.com/rdeioris/glTFRuntime/issues/39
TSharedPtr<FglTFRuntimeParser> Parser = FglTFRuntimeParser::FromFilename(Filename, OverrideConfig);

Async(EAsyncExecution::Thread, [Parser, Asset, Completed]()
	{

		FGraphEventRef Task = FFunctionGraphTask::CreateAndDispatchWhenReady([Parser, Asset, Completed]()
			{
				if (Parser.IsValid() && Asset->SetParser(Parser.ToSharedRef()))
				{
					Completed.ExecuteIfBound(Asset);
				}
				else
				{
					Completed.ExecuteIfBound(nullptr);
				}
			}, TStatId(), nullptr, ENamedThreads::GameThread);
		FTaskGraphInterface::Get().WaitUntilTaskCompletes(Task);
	});

}`


Add: Airbnb

Company
Airbnb
Description
What is the Connect Apprenticeship Program?
The Connect Program is a paid 6-month program to provide a pathway to our entry-level software engineering roles for individuals with nontraditional technical backgrounds.
Link
https://careers.airbnb.com/positions/1879075/
Location

San Francisco, CA

Featured Image

By submitting this issue, I have verified the following ✅

[x] Checked to see if the apprenticeship has already been added before 🤔
[x] Made sure all the details were provided 🔍

@julinvictus  Do you have an updated link for this? Seems to be outdated already.

It seems application ended on Oct 19 so they put offline. Would it be interesting to have this link? https://www.techhireoakland.org/apprenticeships/airbnb

@julinvictus  Hmm I'm not sure. Usually the links should be direct links. Thoughts @fvcproductions  ?

hmmm i think it would still be worth putting any link just so it's known that airbnb does have an apprenticeship program (i had no idea!)


Add support for Purism Librem 5

Description of changes
This is a continuation of #557 to add support for the Purism Librem 5.
Things done

[X] Tested the changes in your own NixOS Configuration
[X] Tested the changes end-to-end by using your fork of nixos-hardware and
importing it via <nixos-hardware> or Flake input

Given that we haven't received a response yet and https://mobile.nixos.org/devices/index.html also looks like it doesn't support that many devices officially at all, I am going to merge this for now as I suspect a bandwidth issue in the project. After all it might depend a bit on your usecase and what do you want to do with the phone (from my understanding mobile-nixos also adds many things on top of nixos).


Issues with PowerShell v7.3.1 - Fixes Supplied

Have run into some issues post-update to PowerShell v7.3.1; the AutoTask module was incurring a series of compiler errors.
2x Fixes are required:
Reference.cs file (\AutoTask\2.0.1\Private\Reference.cs)
For methods OpenAsync() and CloseAsync(), add the new keyword in combination with the others. Example:
public virtual new System.Threading.Tasks.Task OpenAsync()
public virtual new System.Threading.Tasks.Task CloseAsync()
Autotask.psm1 file (\AutoTask\2.0.1\Autotask.psm1)
Change this section:
if ($PSVersionTable.PSVersion.Major -ge 6) {
    $assemblies += @(
        'netstandard'
        'System.Xml.XmlSerializer'
        'System.Runtime.Serialization.Xml'
        'System.ServiceModel.Primitives'
        'System.Private.ServiceModel'
        'System.Diagnostics.Tools'
    )
}

To:
if ($PSVersionTable.PSVersion.Major -ge 6) {
    $assemblies += @(
        'netstandard'
        'System.Xml.XmlSerializer'
        'System.Runtime.Serialization.Xml'
        'System.ServiceModel.Primitives'
        'System.Private.ServiceModel'
        'System.Diagnostics.Tools'
        'Microsoft.Bcl.AsyncInterfaces'
    )
}

Welcome :)

Thank you!

Thanks @TwiggyDev
It would be great if this fix can be comitted and released as a minor patch 😊

Thank you, @TwiggyDev! I will include this into an update this week. I am trying not to change anything else, but there seem to have been thrown in a couple of minor changes that are throwing a couple of exceptions in my automatic rebuild system, but I expect to clear that out before the end of the week.

Module have been updated with a fix for this and updated to API version 1.6.11.


123Create Test

Hey there,
Assuming this is a mistake? Not sure why you are opening multiple PR's to the repo.


Add the package on Packagist

I can't find it there at the moment.

This is blocked by #8.

Let's add all packages to packagist. Or at least this repo, the factory interfaces and tests.

https://packagist.org/packages/http-interop/http-middleware

I've added all the factory packages too.


Setting sampling rate

I cant set the sampling rate in the app. Is there a way to do that?

Hello,
the Android platform does not support sampling frequencies as you might think.
The Android takes in only number of ms, till which the system should deliver thr sample. But in the end the app receives sample from the system, when the system decides.
Example, lets set max delay for 100ms, so every sample will be delivered in 100ms. If it is in 50ms, 25ms or 1ms, it depends on Android. It is not even obliged to deliver it at all - this value is taken as preffered value and Android can just ignore it.
Why? Other processes, battery settings, low battery, low resources,...
That is why, sampling frequency can vary every time, you take measurement.  It is not constant.
You can set this option in menu - > advanced - > pick sensors - > pick measurement type - > max delay
More granularity in the shown options there would be useless as Android will do its own thing still.
I recommend to set it to 0ms, take all the data, what you can and if need to, resample them in required sampling frequency. The purpose of the app is to record raw data, not artificial - no such option in the app exists.
If other app has such option, they interpolate samples / resample them and the data are not in raw form.
Hopefully, you will find this helpful.


[Backport] Remove exception on failure response from GCS delete API

PR: https://github.com/apache/druid/pull/16047

@gargvishesh, can you please do a clean backport of only the merge commit bed5d9c from master instead of the entire branch?


added gulucity airqloud heatmap

WHAT DOES THIS PR DO?

Added Gulucity AirQloud to list of AirQlouds with heatmap on the Platform map.

HOW DO I TEST OUT THIS PR?

create a virtual environment
install all requirements, src/gpmodel/requirements.txt
get the .env and test using development environment (note that: for the event API we now use .../api/v2/..)
run the src/gpmodel/main.py

WHICH ENDPOINTS SHOULD BE READY FOR TESTING?:
The heatmap API

@sserurich This is as a result of TOKEN.

@Baalmart need this moved to production, it's already merged to staging last week.
Thanks.


Fix refresh when VMs are hidden

After clicking Refresh button when VM is selected but isn't displayed in a tree its parent's info is rendered on the summary screen.

Before:

After clicking Refresh button

After:

After clicking Refresh button

This effects following trees:
Compute -> Infrastructure -> Virtual Machines -> VMs & Templates
Compute -> Cloud -> Instances -> Instances by Providers
Compute -> Cloud -> Instances -> Images by Providers
In VM Object, if you click the refresh button (not the browser refresh), it goes one level up in the tree:
https://bugzilla.redhat.com/show_bug.cgi?id=1389299
@miq-bot add_label bug, ui, euwe/yes, blocker

@miq-bot add_label wip

@miq-bot remove_label wip

@ZitaNemeckova I tested in the UI and this does fix the reload button.  However, the same issue needs to be fixed if the user presses the browser refresh button or goes to another tab and comes back, as we want to bring the user back to the same screen that they left from.
@h-kataria may be able to help figure out a way to make this work properly.
Thx, Dan

@dclarizio Solved. Please have a look.

Verified refreshes and navigation away and back in the UI.


[Sprint: 48] XD-2817 - moved gemfire deps to XD classpath

Backport to 1.1.x?

I have mixed feelings about this one.  It is nice to remove the gemfire jar being in 4 places, but I don't like adding it to xd/lib so much since we generally want to minimize the size of xd/lib and it also means that it maybe harder to have gemfire version specific modules w/o deleting the existing versions on xd/lib.  For example, the 7.0 series is a bit old now (waiting for spring data to upgrade to 8.x)...
Does the comment in build.grade "The following loaded to prevent issues with gemfire modules" mean that something is broken OOTB now?  If so, we must have some gap in the CI integration tests.

The comment refers to this issue. Also Gemfire does require the same version everywhere in my experience. Another approach is to rely on the additional module classpath entries feature that Eric recently added and rely on $GEMFIRE_HOME to locate the jar.

I agree with Mark that moving stuff to the main classpath is starting to be the "default solution" to our classloading problems, but this creates other complications. At one point in time, we'll have to really look into those.
For the matter at hand though, please note that leveraging the "additional module classpath" feature I added recently would not change the current classloading scheme (if this is indeed the source of the problem this PR is trying to address). The gemfire jars would still be loaded by the module classloader. The "benefit", would be that they could be physically shared to a central filesystem location (what Dave denotes $GEMFIRE_HOME above)

So my alternate suggestion won't work. Another related issue is the XD container is a client to gemfire and doesn't require a local GF installation. The root problem here is that Gemfire modules cannot close the client cache when undeployed because the client cache is a true singleton shared by all GF modules. If there are other streams deployed that contain GF modules, they will fail if one of them closes the cache. The CNFE happens because the thread that monitors the locator connection continues as long as the client cache and container is running. I have considered implementing a background task to detect when there are no GF modules deployed and shut down the client cache at that point. However this would also require gemfire.jar to be on the main classpath.

Just finished reading the JIRA to better understand the root cause.  Is it possible to have our gemfire modules never shutdown the cache?  Alternatively, is it possible to use gemfire's REST API to do this or to expose a custom JMX endpoint that can be invoked 'out of band' to the stream destruction to shutdown the cache?

Just to recap in case this gets lost, I would -1 on this approach.
Making sure the (isolated) module shuts down evreything GemFire related seems like a better approach to me (and initial POC seemed promising)

+1 to @ericbottard (so another -1 for adding GF to the main classpath)

Agreed
On Tue, May 12, 2015 at 11:26 AM, Eric Bottard<EMAIL_ADDRESS>wrote:

Just to recap in case this gets lost, I would -1 on this approach.
Making sure the (isolated) module shuts down evreything GemFire related
seems like a better approach to me (and initial POC seemed promising)
—
Reply to this email directly or view it on GitHub
https://github.com/spring-projects/spring-xd/pull/1585#issuecomment-101320192
.

I manually testing with 2 streams:
xd> stream create gf --definition "http  | gemfire-json-server --regionName=Stocks --keyExpression=payload.getField('symbol')" --deploy
xd> stream create gf2 --definition "http --port=9001 | gemfire-json-server --regionName=Stocks --useLocator=true --port=10334 --keyExpression=payload.getField('symbol')" --deploy

posting data and udeploying/destroying and redeploying/creating one or the other stream. Repeating, using a locator as in the reporter's scenario
xd> stream create gf --definition "http --port | gemfire-json-server --regionName=Stocks --useLocator=true --port=10334 --keyExpression=payload.getField('symbol')" --deploy
xd> stream create gf2 --definition "http --port=9001 | gemfire-json-server --regionName=Stocks --useLocator=true --port=10334 --keyExpression=payload.getField('symbol')" --deploy

Everything works as expected.

Did you destroy the streams as well, as discussed in the JIRA comment?
I'll try to have a look at it myself, but this is what triggered an error (as reported in hipchat) at the time.
Also, I looked at possible leakages with yourkit and saw some (but the JMX bean was a retainer, need to have a closer look, e.g. with JMX disabled)

Rebased and merged as 3651677.
Tested with this stream definition:
stream create streamx --definition "trigger --fixedDelay=3 | http-client --url='''https://query.yahooapis.com/v1/public/yql?q=select * from yahoo.finance.quote where symbol in (\"MSFT\")&format=json&env=store://datatables.org/alltableswithkeys''' --httpMethod=GET | splitter --expression=#jsonPath(payload,'$.query.results.quote') | transform --expression=payload.toString() | gemfire-json-server --regionName=Stocks --keyExpression=payload.getField('Symbol')" --deploy

The GemFire error is gone.
There is still leakage though, but it is independent of GemFire.
One of the problems is from enabling JMX, and still after disabling that, there is leakage. I created https://jira.spring.io/browse/XD-3069 to track that.


Prototype for DQDM.

Add DeviceQuantileDMatrix.  This class accepts only iterator and does not allow individual meta data setter.
Remove DataFrameBatch as it's unnecessary.
Accept actual data frames instead of column indices in ColumnBatch.
Move getArrayInterfaceJson into the base class and let the subclasses define getters for each data field like labels and weights.  This way we can modify the internal of this function whenever needed.

I have converted all the related tests.  Will mark to-do items in inlined comments.


Merge oc-pushy-pedant

This merge was created  using the same method used in omnibus_merge.sh

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
Non-GitHub Verified Committers
There are 1 commit author(s) whose commits are authored by a non-GitHub verified email address. Chef will have to manually verify that they are authorized to contribute.
Please sign the CLA here.


Enhancing Chaos Center: Implementing E2E Test Cases and Addressing CVE Issues

Currently, we don't have many E2E test cases for the chaos centre, making testing difficult during the release. We have add the E2E critical test cases in the chaos center
We have CVEs in the chaos centre, we need to fix those CVEs

are the CVEs already identified? if yes, could you please tell where to find those? or do we need to identify CVEs and solve them? I have checked https://cve.mitre.org/cve/search_cve_list.html and didn't find any public CVEs of chaos center

Hello everyone,
I have basic knowledge of Linux, Docker, Helm, Kubernetes, IaC, Go, version control, GitHub Actions, and Argo CD. I was a part of GSoC 2023 in OpenSUSE and have cleared certifications such as CKA, CKAD, and Terraform Associate.
This issue caught my eye as it aligns with my skills and provides an excellent opportunity to gain hands-on experience with real-world open-source codebases. I'm excited about the prospect of making meaningful contributions.
I look forward to learning from the Litmus community and contributing to this valuable project.

Applied in this project for lfx mentorship. Looking forward to results.


Logitech Formula Force RX Wheel | Forza Horizon 3 | Dead Zone Issuses

Hi, first of all i wanted to tanks all People who developed this program! Its very cool!
I tried the last 2 months to Play Forza with my old Logitech Formula Force RX.

First i tried with x360ce, it recognizes the Logitech Wheel, but not in Game.

Than i tried XOutput.v0.11, it works well, but had the "Camera Stuck" Bug, because i could not set the Axis 2 to "Disabled" (there was no option for that)

And now i try your XOutput 3.7.1. It works fine! BUT i got two Problems:

When i in game and choose the "inside car" view, i rotate the wheel and the wheel in game start rotate to late. They are (+15°) - (-15°) degree that the game not recognize. But in the XOutput menu, i can see the red dot clearly move in the sector between (+15°) - (-15°). When i set the "dead zone" in XOutput it gets worse.
PS: I recognize that this effect does not occur in XOutput.v0.11

There is a delay of about 0.5 seconds, like: I turn the wheel, 0,5 seconds, than the car wheels turn.

I dont know what it is.
PS: I am from germany (But can also speak russian and can help with german translation) and yes i know my english my English is not the best :)

@serJOOga If you want to help with German translation please visit wiki:  where you can find all information how to add the translation.

The dead zone issue may come from your game. Have you checked if the game adds the dead zone? You can make sure if you check it in Windows game controller tool. Setting dead zone in XOutput should make your problem worse.
The delay is strange for me. XOutput tries to read input as fast as the computer allows it. With an idle CPU it usually can read input in a few milliseconds (5-15 ms). If you are playing a high end game like Forza Horizon 3, your CPU may be busy most of the time. You can try to increase the priority of XOutput in Windows Task Manager. That means if you may have some lags already in game but the input should be read more often and the delay may decrease. I will look into performance anyways.

German and Russian translation would be appreciated. Just follow the instructions linked above.

I did the German translation yesterday. I dont know if i did it right:
https://raw.githubusercontent.com/serJOOga/XOutput/serJOOga-patch-1/XOutput/Resources/languages.txt
1. Yes, the game has settings to set the deadzone. But i set all to zero. I set the XOutput deadzone to zero too.
2. Tried to set priority to "high" but nothing changed. But i can live with this issue.
The biggest Problem is the dead steering angle in the middle. I have to turn the wheel a lot, until there is a reaction in the game :/ Im just wonder why it works with the old XOutput.v0.11.

Ok, i created a pull request with the German translation.
It may be the game which has problems with it. I will try another race game.
Anyway thanks a lot. Maybe I just have to get a new steering wheel 😀

I modified German translation a bit to match other languages in display. But it was good, thanks for support.
I assumed so far that the Dead zone of the devices are set to default 0 by default. This may not be true, so now the dead zone is set manually at start to 0 with v3.8.1. My device is working perfectly with and without this setting. As I cannot reproduce the dead zone issue, I think it may be your device.


When client is configured using url, port seems to be incorrectly set on some methods

I have a weird error: when Qdrant client is initialized with a full URL (ie https://hostname:port), client methods fails with a fetch failed / timeout errors but some don't.
The code:
const qdrantClient = new QdrantClient({ url: 'https://mydomain.com:443' });
try {
  await qdrantClient.getCollection('test');
}  catch (e) {
  console.log(e);
}

When used locally with a URL like http://localhost:6333 there's no issue, but when the URL is https://mydomain.com:443 I get a fetch failed error.
If I add the port manually in the client setup:
const qdrantClient = new QdrantClient({ url: 'https://mydomain.com:443', port: 443 });

It works normally.
EDIT: It also seems only some methods are affected by this, as I can make search queries just fine without having the port explicitly set?

Hello,
This issue arises because of the way URL package parses urls with default ports (443 for https and 80 for http) -
Note: If an input string passed to the URL() constructor doesn't contain an explicit port number (e.g., https://localhost) or contains a port number that's the default port number corresponding to the protocol part of the input string (e.g., https://localhost:443), then in the URL object the constructor returns, the value of the port property will be the empty string: ''.
reference: port

Would like to chip in here. As we are hosted qdrant in a self-host vanilla k8s and exposed the service via https instead of node port. As such we suspect this is the reason why we cannot integrate this qdrant service with others such as anything-llm in this way.


Configure pam_mount to only mount share if server is online

Refs:

https://serverfault.com/questions/851704/how-to-configure-pam-to-only-mount-with-winbind-authentification
https://man7.org/linux/man-pages/man8/pam_exec.8.html

Duplicate of #27


$6

Numeric and Control Subfields

$6 is used for different scripts.  It can be used in any field to provide the same information in another script in an 880 occurrence.
The $6 consists of three parts:

the linking part that notes the precise 880 occurrence that contains the other script. It contains the associated field and two digits that match the two fields, e.g., 100 1# $6880-01
script identification part that identifies the alternate script used in the field. It follows the linking part containing a code
orientation code to indicate that the script is right-to-left. The left-to-right is the default in MARC21 and it is not written in extenso. So, the code r is mostly used to represent that the script is right-to-left

The format is like that:
XXX $6 [linking part]
880 $6 [linking part] / [script identification part] / [orientation code]
Example:
100 1# $6880-01 $aname in latin script
880 ## $6100-01 $aname in another script
alternatively
880 ## $6100-01/(3/r $aname in another script . Code /3 means that the script is Arabic and code r means that the orientation is right to left

XML language codes are built-in to RDF. These xml serializations are fine; in other serializations we have:
ex:Work1 rdawd:P10061 "Aristotle"@en .

In RDA, these strings are treated as appellations: a nomen string of a nomen, with each string represented as a distinct nomen.
RDA allows a simple direct relationship to the nomen string:
ex:Person1 rdaad:P50111 [has name of person] "Aristotle"@en .
Alternatively, for VIAF-level authority control, RDA offers direct relationship to the nomen instance:
ex:Person1 rdaao:P50111 [has name of person] ex:Nomen1 .
ex:Nomen1 rdand:P80068 [has nomen string] "Aristotle"@en .
For names and titles (appellations) in transliterations or 'translations', the simple approach results in a cluster of appellation strings:
ex:Person1 rdaad:P50111 "Aristotle"@en .
ex:Person1 rdaad:P50111 "Aristotelēs"@el-latn .
ex:Person1 rdaad:P50111 "Αριστοτέλης"@el-grek .
The more complex Nomen approach results in a chain/cluster hybrid:
ex:Person1 rdaao:P50111 ex:Nomen3 .
ex:Nomen3 rdand:P80068 "Αριστοτέλης"@el-grek .
ex:Nomen3 rdano:P80060 [has derivation] ex:Nomen2 .
ex:Nomen2 rdand:P80068 "Aristotelēs"@el-latn .
ex:Nomen2 rdano:P80060 ex:Nomen1
ex:Nomen1 rdand:P80068 "Aristotle"@en .
[There are many variations; this one starts in the original script, derives a transliteration, and then derives a translation, but the components can be swapped around in the sequence.
The more complex method is more useful in the context of translations and translierations if Person1 uses only one form of name. This is quite rare: "Gordon Dunsire" and "Gordon J. Dunsire" and "G. Dunsire" are typical forms used in scholarly publishing. Aristotle is not a typical case :-)
But what is the typical case for recording a transliteration in MARC 21 legacy records?

The 880 may not contain the corresponding romanized form of an associated field, especially for 520.
https://lccn.loc.gov/2021421243
520	## |6 880-06 |a Detailed summary in vernacular field only.
880	## |6 520-06/$1 |a "学者的人间情怀"是陈平原的代表作,论及"学术史""走出'五四'""左图右史""述学文体","演说现场","报刊研究"等重要话题,也都点到为止,好在大都日后在专业著作中有所展开.最重要的是,反映了他当时"压在纸背的心情".

For right-to-left scripts (880 $6 /r), it seems that we can use the i18n namespace to set a base direction.

Some additional thoughts ...

For non-RDF representations in RDA, the script and language of a nomen can be explicitly assigned:

ex:Nomen3 rdand:P80066 "el" .
ex:Nomen3 rdand:P80070 "grek" .

An alternative nomen clustering structure uses "is equivalent to":

ex:Person1 rdaao:P50111 ex:Nomen3 .
ex:Nomen3 rdano:P80113 ex:Nomen2 .
ex:Nomen3 rdano:P80113 ex:Nomen1 .
This structure might be a better option for a transform: Treat the contents of 880 as an equivalent nomen of whatever is in the primary tag. This preserves the idea that the 880 is derived from the primary value (as a transliteration) but is a softer approach that using a chain of nomens as indicated above. The downside of both approaches is that nomen IRIs have to be minted, but this can be minimised to the IRI of the primary nomen:
ex:Person1 rdaao:P50111 ex:Nomen3 .
ex:Nomen3  rdand:P80068 "Αριστοτέλης"@el-grek .
ex:Nomen3 rdand:P80113  "Aristotelēs"@el-latn .
ex:Nomen3 rdand:P80113  "Aristotle"@en .
The 'simple' cluster model does not preserve a distinction between the primary appellation and the transliteration.

I just wrote out a rough draft of what might go into the documentation on $6. I didn't create a visual diagram because the question of how and how reliably we can determine which are primary appellations and which are derivaitons/transliterations is still a bit beyond me. @szapoun @GordonDunsire

It gets complicated when you consider that 100 holds an access point for a person.
100 1# $6 880-01 $a Tolstoy, Leo, $c graf, $d 1828-1910, $e author.
880 1# $6 100-01/(N $a Толстой, Лев, $c граф, $d 1828-1910, $e author.
I think it's safe to say:
ex:Person1 rdaao:P50411 [has authorized access point for person] ex:Nomen1 .
ex:Nomen1 rdand:P80068 "Tolstoy, Leo, graf, 1828-1910"@en .
Two questions:

Can you say there's another nomen that is 'equivalent to' an authorized access point?

ex:Nomen1 rdand:P80113 "Толстой, Лев, граф, 1828-1910"@ru .
If not, then maybe a variant access point
ex:Person1 rdaad:P50412 [has variant access point for person] "Толстой, Лев, граф, 1828-1910"@ru .

If map to an access point, still keep the 'name of person' or not?

ex:Person1 rdaao:P50111 [has name of person] ex:Nomen2 .
ex:Nomen2 rdand:P80068 "Толстой, Лев"@ru .
ex:Nomen2 rdand:P80113 "Tolstoy, Leo"@en .
It seems to me that "Толстой, Лев" is structured description (the inverted form), and RDA only allows unstructured description/identifier/IRI for 'name of person'.

The 100 is not "name of person", but "access point for person". Since we don't know whether the access point is controlled or uncontrolled here, it's not safe to assume it's the authorized access point. I think it should look like this:
ex:Person1 rdaaoP50377 [has access point for person] ex:Nomen 2 .
ex:Nomen2 rdand:P80068 "Толстой, Лев, граф, 1828-1910"@ru .
ex:Nomen2 rdand:P80060 "Tolstoy, Leo, graf, 1828-1910"@en .

I will update the draft documentation to reflect our meeting discussion yesterday today

Wait are we using hasDerivative or isEquivalentTo?

Also I don't see how we can accurately produce language tags using the bibliographic data (unless the primary field allows an explicit statement representing the language of the value AND it is used in the bib data for that purpose). In Zhuo's example above, for example, with the 100/880: I don't see a representation of the language of the value; I only see a general script identification code. Am I missing something?

I don't know of script IDs that can be represented without a language representation; scripts, if I remember correctly, are subtags only. That's according to [my memory of BCP47 (I'm being lazy and not looking at it).

oh, interesting. i don't think we can accurately determine language for these without humans, can we?

That's what I'm thinking

I'm unsure how to determine which nomen is derived from which if 880 is a combination of non-latin and latin data? I assume a cataloger would construct the authorized access point first, but the base form of the AAP is derived from the non-latin data.
700 1# $6 880-07 $a Xu, Hong $c (Librarian), $e author.
880 1# $6 700-07/$1 $a 徐鸿 $c (Librarian), $e author.

That suggests use of isEquivalentTo may be more reliable than hasDerivation, no?

regular field is derived from 880

always?

yes i believe so, we discussed at meeting week before last

If there is doubt, "is equivalent to" should be used as to link the original nomen (object) to the transliterated nomen string (datatype). The examples in Bibliographic Appendix D suggest that there is no absolute differentiation between "agency script" and "bibliographic script".
Ideally, we would want to use the bibliographic script for the nomen object and the agency script for the equivalent nomen string (datatype), but this cannot be distinguished without human intervention.
I think we should assume that the regular field (not 880) is the source of the nomen object. It is what is intended by the cataloguing agency, irrespective of agency or bibliographic script preferences.
This implies that the 880 field is the source of the equivalent nomen strings.
nomenRegular <"has nomen string"> "SES for 880 subfields" .
Issues:

The existence of an 880 field with non-zero occurrence number indicates the need to mint a nomen IRI for the regular field, to link to the equivalent 880 nomen string.

Do we want to mint a nomen IRI for all appropriate "regular" fields that do not have a corresponding 880?
This would be counter to the avoidance of minting nomen IRIs unless there is a need to talk about (describe) the nomen.
For example, do we mint a nomen IRI for 264 $a (appellation of place) and 264 $b (appellation of corporate body)?
If not, the process must start with the 880 field.
If there is an 880 occurrence number, find the regular field, mint a nomen IRI with the regular field's nomen string, and relate it to the 880 field's nomen string with "is equivalent to".
If there is more than one 880 field with the same linkage tag/occurrence number, add the second and subsequent 880 nomen strings to the IRI minted for the first 880.
If there is a "00" 880 occurrence number, mint a nomen IRI with the 880's nomen string, assigning it to the entity indicated by the linkage tag.
In all cases, a nomen IRI is only minted if the regular field and subfields contain nomen string values. Some regular field and subfields contain manifestation statement, note, and other unstructured  string values that are not appellations.
If the 880 linkage tag is for a field that is not an appellation, generate an additional set of statements using the mappings for the regular field and the content of the 880 field.
That is, a transliteration of an annotation (note, etc.) should be treated as a separate annotation with no extrinsic relationship to the original. Otherwise, the relationship can only be preserved by reifying at least the original statement, if not both.

Including the script in an xml language tag will be difficult. It is necessary to add the script code to a language code, so there is a problem when only the script code is recorded. The script is Cyrillic, but is the language Russian or Serbian? This requires automatic detection of languages, or it may be possible to use the language codes in 008 and 041. If there is a code for 'predominant language' (008 35-37) or 'language of text' (041 $a) then this can be mapped to an xml language tag with an appended script code.

If the language cannot be determined, the script cannot be recorded in an xml language attribute. Instead, we are back to minting nomens for the 880 fields so that we can use the RDA element "has script of nomen".

Some clarification of the discussion on the semantics of "is equivalent to":
This element ignores the kind of appellation/nomen string (name/title, access point, identifier). All it means is that the two related nomens are appellations of the same entity; it says nothing about the appellations themselves and is valid if the related nomens are a name and an identifier, etc. In reification terms:
nomen1 rdano:P80113 nomen2 .
nomen1 rdf:subject entity1 .
=> nomen2 rdf:subject entity1 .
nomen1 rdand:P80113 "nomen string 2" .
nomen1 rdf:subject entity1 .
=> entity1 rdaxd:P00017 "nomen string 2" .
Conversely:
entity1 rdaxo:P00017 nomen1 .
entity1 rdaxo:P00017 nomen2 .
=> nomen1 rdano:P80113 nomen2 .
entity1 rdaxo:P00017 nomen1 .
entity1 rdaxd:P00017 "nomen string 2" .
=> nomen1 rdand:P80113 "nomen string 2" .
The basic model for transliterated nomen strings is:
entity1 rdaxo:P00017 nomen1 .
nomen1 rdand:P80068 "nomen string 1" .
nomen1 rdand:P80113 "nomen string 2" .
Nomen is a reification:
entity1 rdaxd:P00017 "nomen string 1" .
=> nomen1 rdf:subject entity1 .
=> nomen1 rdf:predicate rdaxd:P00017 .
=> nomen1 rdf:object "nomen string 1" .

So it looks like we will need to leave out at least some script identification codes, where a string won't be associated with a Nomen. What will be done with the orientation codes? I just updated the draft documentation and tried to implement comments

I'm unsure how to determine which nomen is derived from which if 880 is a combination of non-latin and latin data? I assume a cataloger would construct the authorized access point first, but the base form of the AAP is derived from the non-latin data.
700 1# $6 880-07 $a Xu, Hong $c (Librarian), $e author. 880 1# $6 700-07/$1 $a 徐鸿 $c (Librarian), $e author.

This is a really good example. Maybe the most accurate we can be is "hasEquivalent". This also suggests we might need to throw out or be less exact with field orientation and script identification codes, huh?

These documentations are perhaps appropriate to our discussion today:
MARC21 Character Sets https://www.loc.gov/marc/specifications/speccharintro.html
Part 3, Unicode has this to say:
MARC subfield $6 (Linkage)
Subfield $6 (Linkage) is used in MARC 21 records to link alternate graphic representations of the same data, to identify the presence of specific scripts in a field, and to flag fields in which the display/print directionality of data is right-to-left (e.g., for Arabic script). The subfield $6 script identification code in MARC-8-encoded MARC 21 records identifies MARC-8 character sets, rather than scripts per se; hence the code is irrelevant in the Unicode environment because the character set is always UCS, which has no script identification code value. The script identification code should be dropped from subfield $6 when converting to Unicode from MARC-8 encoding. The Field Orientation Code, which flags a field as having right-to-left display directionality, should be used in Unicode-encoded MARC 21 records. When present, the Field Orientation code is separated from the subfield $6 tag linkage data by two solidus (slash) characters (002F(hex)).
OCLC Bibliographic Formats and Standards makes reference to the above document in its description of 880 tag and the Control Fields section of $6, but don't explicityly say there that some features described in those documentations are irrelevant for Unicode records.  However, they do mention in tag 066 documentation that "Records containing non-MARC-8 characters are expected to be output in the UTF-8 data format. Field 066 does not appear in records exported in UTF-8, and the script code does not appear in field 880 subfield ǂ6.   iAnd in their Online Cataloging page, section .2.7 (Character Sets) they state "OCLC implemented use of all UTF-8 Unicode defined characters in 2016."   What's confusing is their mention of codes for Unicode scripts - which were used in MARC8 encoded records during the transition period  between MARC8 with the original 8 alternate graphic encodings, and the point of full Unicode implementation, after which libraries and their systems were expected to transition to UTF8.
If we specify that our conversion is designed for MARC21 UTF8 Unicode records we could save ourselves from having to deal with the MARC8 script coding.  If people with MARC8 want to transform their records to RDA/RDF they would have to Unicodize them first.  Policy?

Decision documentation has been transferred from now-obsolete working google doc to decisions index: https://github.com/uwlib-cams/MARC2RDA/wiki/Decisions-Index#iih-6

I realize now that we didn't finish the discussion on MARC-8 vs. Unicode.  Crystal had a question why we should avoid MARC-8.
Note that only MARC-8 encoding would have a "script" indication in tag 066, and a script identification code in $6.   That would be for the special MARC-8 script encoding for the limited set of languages with those codings.  There is no script identifier in $6 when the record is in Unicode.
Practically speaking, I don't think we can deal with the MARC-8 encoding which for all intents and purposes is obsolete today and would require special software to "decode" for display in a web page or editing interface.
Most library systems provided processes to convert MARC8 records to UTF8 Unicode, and MARCEdit provides tools to do so.

My knowledge of MARC-8 is limited. Since we aren't mapping the script indications anyhow, does it matter for the $6 mapping specifically? I don't see any harm in specifying somewhere that our mapping is designed for Unicode UTF8...I will put the idea on the agenda for next week's meeting and if no one is opposed that's what we'll do. Thank you for taking the time to explain this to us @lake44me !


Add zuul shellcheck job

Signed-off-by: Ramona Beermann<EMAIL_ADDRESS>

                       Rule Violation Summary
 count tag                        profile rule associated tags
     1 var-naming[no-role-prefix] basic   idiom
     1 no-changed-when            shared  command-shell, idempotency

Always mention the source of a copied script and the license.
It is a no go to simply copy scripts from somewhere else without referencing the source and ignoring the license.

https://github.com/ludeeus/action-shellcheck/blob/master/action.yaml#L146-L221
https://github.com/ludeeus/action-shellcheck/blob/master/LICENSE

Oh god you are surely right. I will add the comments.
But I think it is always best practice to mention the origin code in all repositories, not only in this one.
We should do the same here:
OSISM: https://github.com/osism/node-image/blob/main/image-create.sh
ORIGIN: https://github.com/cloudymax/pxeless/blob/46484efa50273a09032f39e3a0b8200b4b29cc19/image-create.sh#L5
ORIGIN: https://github.com/charlyschulte/pxeless/blob/e9a4bc0b0f7d303e099de036b2f54c21c664f5f4/image-create.sh#L5
LICENSE: https://github.com/cloudymax/pxeless/blob/46484efa50273a09032f39e3a0b8200b4b29cc19/LICENSE
OSISM: https://github.com/osism/openstack-ironic-images/blob/main/scripts/ubuntu/cleanup.sh
ORIGIN: https://github.com/lukaf/box/blob/33872f8114306853c0d6443191b20191838386ce/package/cleanup.sh#L17
LICENSE: https://github.com/lukaf/box/blob/33872f8114306853c0d6443191b20191838386ce/LICENSE
OSISM: https://github.com/osism/openstack-ironic-images/blob/main/scripts/common/sshd.sh
OSISM: https://github.com/osism/openstack-ironic-images/blob/main/scripts/common/minimize.sh
ORIGIN (There is a version from chef too. Don´t know which was really the first. But both are older than ours.): https://github.com/swettk/bento/blob/0b3758339c3dfcdba424cb716f9b0998f44331b6/scripts/common/sshd.sh#L4
ORIGIN (Same here): https://github.com/swettk/bento/blob/0b3758339c3dfcdba424cb716f9b0998f44331b6/scripts/common/minimize.sh
LICENSE: https://github.com/swettk/bento/blob/master/LICENSE
OSISM: https://github.com/osism/container-images/blob/main/homer/files/entrypoint.sh
ORIGIN: https://github.com/bastienwirtz/homer/blob/fd9237eb52affce2d202ff3f21ef47a8bb3cf542/entrypoint.sh
LICENSE: https://github.com/bastienwirtz/homer/blob/main/LICENSE
That was only a short check from my side. Maybe we should check deeper.


Deployment Tables Summary: Summary of all individual solution tables in one place

Which package/s are you suggesting this feature for?
Dashboard
Is your feature request related to a problem? Please describe
As of now, all deployment types, e.g. micro VM, generates a deployment table with the deployment info.
It's very useful and working well. But what if you have 4 deployments, e.g. wordpress, micro vm, full vm and nextcloud.
To connect/find info, you need to remember you have those exact 4 deployments, go to those page individually and check the table info (or open each deployment page individually of all deployments, go to the bottom and see if you have a deployment of this solution type, to find the 4 you deployed).
This is not ideal and can take time for users with lots of deployments.
Describe the solution you'd like
A solution would be to have somewhere on the dashboard where you can see all the deployment tables of all the deployments you have. It wouldn't show any empty tables of deployments you don't have (e.g. you have micro VM deployment, and it shows all the other table as empty).
UX with basic example:

I deploy 3 deployments, wordpress, nextcloud, peertube
I can go to the individual deployment page to see the individual table; OR
I can go to the Deployments Summary Table and see the 3 deployment tables of wordpress, nextcloud and peertube.

References
Just like we have a page to see all contracts, we could have a page to see all deployment tables.

related to #1602

duplicated to: https://github.com/threefoldtech/tfgrid-sdk-ts/issues/1602


WIP updates for preview 5

I'm going through the workshop again and finding little things to polish as well as updating things that have changed.
Feel free to discuss or debate anything that I added, I tried to polish up some sections where I thought we introduced a new concept without explanation.
I reworked and simplified everything about the appstate pattern. Now that we have EventCallback it works pretty well in the simplified form and serves as a good explanation of why EventCallback is needed.

It definitely looks good to have so many fewer StateHasChanged calls!
About the simplifications to the OrderState class - while I agree they are good simplifications for this tutorial, would you still agree that in the more general case you'd keep the StateChanged event and manually trigger it from everything that mutates internal state? Otherwise we're relying on the idea that, on each state change, we just so happen to be in a place to trigger a refresh on the right component. If there were cases where component A causes a state change, and unrelated component B wants to observe it, we wouldn't be able to achieve that through EventCallback alone.
I'm still in support of your change, just want to synchronise our ideas about the broader appstate-like pattern.

@rynowak @danroth27 Will this be merged soon? I'm giving this workshop on 5/31.

Yeah, I plan to do it this weekend 👍

I'm still in support of your change, just want to synchronise our ideas about the broader appstate-like pattern.

I think this would be true if you wanted to use AppState as a global - ie to handle events from many levels of hierarchy. Maybe it warrants more discussion, but I simplified with use case in the workshop for AppState - which removes all of the ceremony.
So I guess there are two use cases:

Refactor some logic for a complicated component into a class
Refactor logic for the whole app into a class

The former is what's in the workshop now and it doesn't require StateHasChanged() nor does it require disposing and detatching. I thought this was the plan based on the feedback we got from the first workshop. If you feel strongly that we should teach option 2 in the workshop then I'd be happy to put it back to the way it was.


404 on Telegraf 'Getting Started'

URL for relevant page?
'Getting Started' link on this page:
https://www.influxdata.com/time-series-platform/telegraf/
404 here:
https://docs.influxdata.com/telegraf/v1.0/introduction/getting-started-telegraf/
What products and version are you using?
Where did you look before opening the issue?

@toddboom looks like the issue is on the www side.
On https://www.influxdata.com/time-series-platform/telegraf/, the Getting Started button should link to
https://docs.influxdata.com/telegraf/v1.0/introduction/getting_started/
not
https://docs.influxdata.com/telegraf/v1.0/introduction/getting_started-telegraf/

I just updated the site. The link should work now.

Confirmed fixed.


Async onEntry / onExit

Bug
Hey 👋 I've been working with your library for 2 weeks and it's amazing ! However I encountered a problem when trying to use an async function on the onEntry hook of a State.
Description:
The problem is that it looks like the Machine doesn't await for the Promise to resolve.
(Bug) Expected result:
The expected result would be that a state await his onEntry hook before jumping to the next one.
(Bug) Actual result:
The machine jump to the next state without awaiting the onEntry function.
Hope it's clear ! Thank you very much for your help 🤞

All actions (onEntry, onExit, actions in transitions) are "fire-and-forget" actions, which means they're executed and the machine shouldn't care what results from those actions: https://xstate.js.org/docs/guides/effects.html
If you want to do a sequence of dependent, async actions, that sounds like it would be better expressed as a single action:
// State node config
onEntry: 'doSequence',

// ...

// Machine options
actions: {
  doSequence: async (ctx) => {
    await doFooThing(ctx);
    await doBarThing(ctx);
  }
}

If you actually wanted the result of those actions, that would be better placed in invoke:
invoke: {
  src: 'fooBarSequence',
  onDone: // ...
},

// ...

// Machine options
{
  services: {
    fooBarSequence: (ctx) => async () => {
      const result1 = await foo(ctx);
      const result2 = await bar(result1);
      return result;
    }
  }
}

Hope that helps!


fix!: remove sql-lint

sql-lint is unmaintained, and its dependencies are impacted by several vulnerabilities.
This will also help unblock #5990

Readiness checklist
In order to have this pull request merged, complete the following tasks.
Pull request author tasks

[x] I checked that all workflows return a success.
[x] I included all the needed documentation for this change.
[x] I provided the necessary tests.
[x] I squashed all the commits into a single commit.
[x] I followed the Conventional Commit v1.0.0 spec.
[x] I wrote the necessary upgrade instructions in the upgrade guide.
[x] If this pull request is about and existing issue,
I added the Fix #ISSUE_NUMBER or Close #ISSUE_NUMBER text to the description of the pull request.

Super-linter maintainer tasks

[x] Label as breaking if this change breaks compatibility with the previous released version.
[x] Label as either: automation, bug, documentation, enhancement, infrastructure.
[x] Add the pull request to a milestone, eventually creating one, that matches
with the version that release-please proposes in the preview-release-notes CI job.

@zkoppert @Hanse00 Hi! Here's another breaking change for you to review :)
Unfortunately, sql-lint looks unmaintained and suffers from a few vulnerabilities.


132 create the service reaaaaaaa

Purpose
The purpose of this pull request is to add the service Reaaaaaaa
Fixes #132
Added features

The Reaaaaaaa service is now available !
A new reaction have been implemented (Change the status of an Area)
Two getter url have been added for this reaction

** BE CAREFUL, two AREA cannot have the same name anymore after this PR **

A sync button is now available on the Flutter interface to proceed a Force Re Sync of the object
The Reaaaaaaa logo is available

Updated features

The Trigger map have been moved to avoid Dependency conflict

Fixed feature

A major bug of the Server is now fixed ! (Double tap on the Update button to successfully updating an AREA)

** BE CAREFUL, two AREA cannot have the same name anymore after this PR **
WHY ???


Virus style

How can i custom virus color ?

Click Here, is rgb

@Jhair2015  ok thx you :)

And can i change opacity ?

I suppose so, because it is rgb
Click Here to get rgb code

@Jhair2015
Don't work but thx you )
this.setColor({ r: 57, g: 53, b: 63, a: 0.50 });

Client sided.

OPACITY is client sided.

@Agarian If I remember xD, in my client if I have the opaciodad of virus


.not failing in watch mode with mocha

Basically, it's as if I did not have a .not in my assertion
mocha.opts
 --require ignore-styles --compilers js:babel-core/register --compilers jsx:babel-core/register --colors --recursive
npm test:watch :
./node_modules/mocha/bin/_mocha --watch src/**/*.spec.js*
Loader.spec.jsx :
import chai from 'chai'
import chaiEnzyme from 'chai-enzyme'
import dirtyChai from 'dirty-chai'
import React from 'react'
import {mount, render, shallow} from 'enzyme'
import Loader from './Loader'

const expect = chai.expect
chai.use(dirtyChai)
chai.use(chaiEnzyme())

describe('Loader', () => {
  it('instantiate correctly', () => {
    const wrapper = shallow(<Loader />)
    expect(5).to.not.eql(6)
    expect(wrapper).to.not.have.attr('style')
  })
  it('has an option to remove margins', () => {
    const wrapper = shallow(<Loader noMargin />)
    expect(wrapper).to.have.style('margin').equal('0')
  })
})

At first run, tests are successful. However when I trigger the watch by adding a blank line for example I get the following error :

     AssertionError: expected <Loader /> to have a 'style' attribute

     HTML:

As you can see, the expect 5≠6 is working as expected but not the one from chai-enzyme.
Any Idea why?
Thank you

@npoirey can you check if this is still an issue with 0.8.0?

Just tried it out, working as expected, thanks !
I'm closing this .


How to add submit in step 4?

On step 4 as per the demo how do i add submit? When you visit step 4 you should see a submit button cant see it though. Can you help on how to add submit when you are in the last step?

well, each step is individual component (you can use global state to integrate them), so you would just make it a standard form component with submit button


Limit the size of the imported file [don't merge]

Fixes #2115

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

retest this please

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

@juanignaciosl CR please

Frontend tests were OK :+1: (details)

Nothing else to add :+1:

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)


fix code analysis issue

Pull Request Test Coverage Report for Build 272

6 of 15 (40.0%) changed or added relevant lines in 13 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.03%) to 34.75%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

sofa-ark-parent/core-impl/archive/src/main/java/com/alipay/sofa/ark/loader/DirectoryContainerArchive.java
0
1
0.0%

sofa-ark-parent/core-impl/archive/src/main/java/com/alipay/sofa/ark/loader/ExecutableArkBizJar.java
0
1
0.0%

sofa-ark-parent/core-impl/archive/src/main/java/com/alipay/sofa/ark/loader/JarPluginArchive.java
0
1
0.0%

sofa-ark-parent/support/ark-tools/src/main/java/com/alipay/sofa/ark/tools/Repackager.java
0
1
0.0%

sofa-ark-parent/support/ark-tools/src/main/java/com/alipay/sofa/ark/tools/MainClassFinder.java
0
1
0.0%

sofa-ark-parent/support/ark-tools/src/main/java/com/alipay/sofa/ark/tools/JarWriter.java
0
1
0.0%

sofa-ark-parent/support/ark-plugin-maven-plugin/src/main/java/com/alipay/sofa/ark/plugin/mojo/LinkedAttributes.java
0
1
0.0%

sofa-ark-parent/support/ark-plugin-maven-plugin/src/main/java/com/alipay/sofa/ark/plugin/mojo/ArkPluginMojo.java
0
2
0.0%

Files with Coverage Reduction
New Missed Lines
%

sofa-ark-parent/support/ark-support-starter/src/main/java/com/alipay/sofa/ark/support/runner/JUnitExecutionListener.java
2
100.0%

Totals

Change from base Build 268:
0.03%

Covered Lines:
1235

Relevant Lines:
3554

💛  - Coveralls


No volumes returned by name

Issue happening when creating a new container:
docker run -ti --volume-driver=rexray -v test:/test ubuntu bash
Centos 7 + Docker 1.9.1 + RexRay 0.3.1
Logs in debug mode:
time="2016-01-07T12:09:55-05:00" level=info msg="getting path to volume" driverName=docker volumeID= volumeName=test
time="2016-01-07T12:09:55-05:00" level=debug msg="got instance" instance=&{ScaleIO 437ec66d00000004  } provider=ScaleIO
time="2016-01-07T12:09:55-05:00" level=error msg="/VolumeDriver.Path: error returning path" error="No volumes returned by name"
time="2016-01-07T12:09:55-05:00" level=error msg="No volumes returned by name"
time="2016-01-07T12:09:55-05:00" level=info msg="mounting volume" driverName=docker newFsType= overwriteFs=false volumeID= volumeName=test
time="2016-01-07T12:09:55-05:00" level=debug msg="got instance" instance=&{ScaleIO 437ec66d00000004  } provider=ScaleIO
time="2016-01-07T12:09:55-05:00" level=error msg="/VolumeDriver.Mount: error mounting volume" error="No volumes returned by name"
time="2016-01-07T12:09:55-05:00" level=error msg="No volumes returned by name"
time="2016-01-07T12:09:55-05:00" level=info msg="status of count" exists=false volumeName=test
time="2016-01-07T12:09:55-05:00" level=info msg="initialized count" count=0 volumeName=test
time="2016-01-07T12:09:55-05:00" level=info msg="unmounting volume" driverName=docker volumeID= volumeName=test
time="2016-01-07T12:09:55-05:00" level=debug msg="got instance" instance=&{ScaleIO 437ec66d00000004  } provider=ScaleIO
time="2016-01-07T12:09:55-05:00" level=error msg="/VolumeDriver.Unmount: error unmounting volume" error="No volumes returned by name"
time="2016-01-07T12:09:55-05:00" level=error msg="No volumes returned by name"

Found the problem @djannot?

@clintonskitson This is the first time I try to use RexRay and thought the volume was automatically created when running a docker run, but I'm not sure, so I now try to create and mount the volume and I get another error (FATA[0024] read /dev/scinia: input/output error).
I'll investigate and see if I need to open another issue for this one. And then, I'll see if the docker run works

Always good to start with the basics here.  The io error would refer to the device not actually being available.
rexray volume create --volumename=testing --size=1" rexray volume mount --volumename=testing rexray volume unmount --volumename=testing`

The issue was related to a communication problem between the SDC and the MDM.
Everything works perfectly now.

Exhibiting the same problem as shown above. Communication between SDC and MDM work fine:
Query-all-SDS returned 4 SDS nodes.

Protection Domain d3d552e900000000 Name: domain1
SDS ID: 307f211e00000003 Name: node262 State: Connected, Joined IP: XXX.XXX.1.96 Port: 7072
SDS ID: 307f211d00000002 Name: node263 State: Connected, Joined IP: XXX.XXX.1.97 Port: 7072
SDS ID: 307f211c00000001 Name: node261 State: Connected, Joined IP: XXX.XXX.1.95 Port: 7072
SDS ID: 307f211b00000000 Name: node264 State: Connected, Joined IP: XXX.XXX.1.98 Port: 7072
[root@node236 ~]#

Also, issuing manual volume create, mount, unmount, remove work normally. However, when issued to create a volume as part of json file to Mesos, Mesos-Slave rexray starts exhibiting the problem (it used to work fine, now its not):
[root@node262 ~]# systemctl -l status rexray
● rexray.service - rexray
   Loaded: loaded (/etc/systemd/system/rexray.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2016-02-02 12:11:48 EST; 12min ago
 Main PID: 23502 (rexray)
   Memory: 6.8M
   CGroup: /system.slice/rexray.service
           └─23502 /usr/bin/rexray start -f

Feb 02 12:11:48 node262.localnet.net rexray[23502]: OsArch: Linux-x86_64
Feb 02 12:11:48 node262.localnet.net rexray[23502]: Branch: v0.3.1
Feb 02 12:11:48 node262.localnet.net rexray[23502]: Commit: bf4d6eec8c931b10d1ec187de052a23c09681ac6
Feb 02 12:11:48 node262.localnet.net rexray[23502]: Formed: Wed, 30 Dec 2015 16:12:44 EST
Feb 02 12:17:43 node262.localnet.net rexray[23502]: time="2016-02-02T12:17:43-05:00" level=error msg="/VolumeDriver.Unmount: error unmounting volume" error="No volumes returned by name"
Feb 02 12:17:43 node262.localnet.net rexray[23502]: time="2016-02-02T12:17:43-05:00" level=error msg="No volumes returned by name"
Feb 02 12:19:21 node262.localnet.net rexray[23502]: time="2016-02-02T12:19:21-05:00" level=error msg="/VolumeDriver.Unmount: error unmounting volume" error="No volumes returned by name"
Feb 02 12:19:21 node262.localnet.net rexray[23502]: time="2016-02-02T12:19:21-05:00" level=error msg="No volumes returned by name"
Feb 02 12:23:41 node262.localnet.net rexray[23502]: time="2016-02-02T12:23:41-05:00" level=error msg="/VolumeDriver.Unmount: error unmounting volume" error="No volumes returned by name"
Feb 02 12:23:41 node262.localnet.net rexray[23502]: time="2016-02-02T12:23:41-05:00" level=error msg="No volumes returned by name"
[root@node262 ~]#

Restarted rexrat daemon on all nodes, but it is not helping.

@akamalov Can you verify that the volume that you are targeting is a part of the correct storage pool?  In the 0.3.1 version, the ScaleIO driver is configured against a single storage pool.  If trying to access volumes outside of that pool, then the error would make sense.  If this is the case, we have a PR open to work with all pools regardless of the configured one.

Not sure what you mean, Clint.  Are you saying that a volume must be manually pre-created ? Here is the json file which I use to submit it to Mesos.
{
 "id": "nginx2rexray",
 "container": {
 "docker": {
 "image": "million12/nginx",
 "network": "BRIDGE",
 "portMappings": [
 { "containerPort": 80, "hostPort": 0, "protocol": "tcp"}
 ],
 "parameters": [
 { "key": "volume-driver", "value": "rexray" },
 { "key": "volume", "value": "nginx-data:/data/www" }
 ]
 }
 },
 "cpus": 0.2,
 "mem": 32.0,
 "instances": 1
}

It's from the article: http://blog.emccode.com/2015/08/28/run-your-stateful-apps-with-mesos-and-docker/

Ok, I see what you're asking.  The volume should be created automatically.
From the error that you sent over, it looks like it's trying to unmount the volume and running into an error since it doesn't exist anymore.
Can you chance the nginx-data to another name and try submitting again?

OK. Solved. I don't know if I can say it that way...However, I had to restart the Mesos-Slave. Once restarted, I was able to deploy volumes as per example posted.

@akamalov FYI, one more piece of info here.  In Docker 1.9 volume existence
is currently a part of the engine.  If a volume got deleted in the backend
without doing it through the volume interface then Docker will have
problems accessing the volume subsequently even if created net new.  Docker
1.10 includes an enhancement to ensure all volume knowledge comes from the
platform to eliminate this problem.
See PR https://github.com/emccode/rexray/pull/274
On Tue, Feb 2, 2016 at 11:19 AM, akamalov<EMAIL_ADDRESS>wrote:

OK. Solved. I don't know if I can say it that way...However, I had to
restart the Mesos-Slave. Once restarted, I was able to deploy volumes as
per example posted.
—
Reply to this email directly or view it on GitHub
https://github.com/emccode/rexray/issues/248#issuecomment-178768252.


Added support for service tokens

Technically, only report was missing the ability to use service tokens.  The reason is that for all methods except for report, a generic ParameterMap is the argument passed to the method.  Simply adding the service_token to that map would be sufficient for auth and authrep.  However, because report doesn't accept the root ParameterMap as an argument, the service token (and also service id) must be passed as arguments.
This behavior has been preserved.  In addition, new variants of all four API methods (authorize, authrep, oauth_authorize, report) have been added that explicitly accept the serviceId and serviceToken.
In addition, I have deprecated all of the ServiceApiDriver constructors which accept a provider_key.  Existing code will continue to work, but developers will receive deprecation warnings.  To replace these constructors (and to avoid confusion), I have added two new static constructor methods:
	public static ServiceApi createApi();
	public static ServiceApi createApi(String host, int port, boolean useHttps);

The former will default to the 3scale SaaS platform, while the latter obviously can be used when running on-prem.
Documentation for #31 should probably be updated to leverage the above methods rather than the constructors.  I have updated the repository's readme appropriately.

Looks good! I have some rusty Java knowledge and see this plugin almost for the first time, but it looks ok to me.


build android on macos10.11 fail due to clang toolchain config??

[wellbye@dyjmbp:~/git-repo/bgfx/.build/projects/gmake-android-arm]make
==== Building bx (debug32) ====
commandline.cpp
In file included from ../../../../bx/src/commandline.cpp:6:
In file included from ../../../../bx/include/bx/commandline.h:9:
In file included from ../../../../bx/include/bx/bx.h:9:
In file included from /Users/wellbye/sdk/andk/toolchains/llvm-3.6/prebuilt/darwin-x86_64/bin/../lib64/clang/3.8.256229/include/stdint.h:63:
In file included from /usr/include/stdint.h:52:
In file included from /usr/include/sys/_types.h:32:
/usr/include/sys/cdefs.h:707:2: error: Unsupported architecture
#error Unsupported architecture
^
In file included from ../../../../bx/src/commandline.cpp:6:
In file included from ../../../../bx/include/bx/commandline.h:9:
In file included from ../../../../bx/include/bx/bx.h:9:
In file included from /Users/wellbye/sdk/andk/toolchains/llvm-3.6/prebuilt/darwin-x86_64/bin/../lib64/clang/3.8.256229/include/stdint.h:63:
In file included from /usr/include/stdint.h:52:
In file included from /usr/include/sys/_types.h:33:
/usr/include/machine/_types.h:34:2: error: architecture not supported
#error architecture not supported
^
In file included from ../../../../bx/src/commandline.cpp:6:
In file included from ../../../../bx/include/bx/commandline.h:9:
In file included from ../../../../bx/include/bx/bx.h:9:
In file included from /Users/wellbye/sdk/andk/toolchains/llvm-3.6/prebuilt/darwin-x86_64/bin/../lib64/clang/3.8.256229/include/stdint.h:63:
In file included from /usr/include/stdint.h:52:
/usr/include/sys/_types.h:55:9: error: unknown type name '__int64_t'
typedef __int64_t       __darwin_blkcnt_t;      /* total blocks /
^
/usr/include/sys/_types.h:56:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_blksize_t;     / preferred block size /
^
/usr/include/sys/_types.h:57:9: error: unknown type name '__int32_t'
typedef __int32_t       __darwin_dev_t;         / dev_t /
^
/usr/include/sys/_types.h:60:9: error: unknown type name '__uint32_t'; did you mean 'uint32_t'?
typedef __uint32_t      __darwin_gid_t;         / [???] process and group IDs */
^
/usr/include/_types/_uint32_t.h:31:22: note: 'uint32_t' declared here
typedef unsigned int uint32_t;

i forget set ANDROID_NDK_ARM


Error ids are lower case

No test?

The existing tests only test that the ids are strings. That seems good enough.

I'm gonna let this one slide... :)


Adding exec permissions to files.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: utka
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

prow/OWNERS [utka]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/lgtm

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: icygalz, utka
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

prow/OWNERS [icygalz,utka]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@utka: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
e96b5692e23eaf5b459593eb3d15b4e6b1572240
link
/test istio-pilot-multicluster-e2e

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


TWEAKING 🎼BEATS#TRIXMIXING1AI ❤Create devcontainer.json

kaggle kernels output trixmixing1ai/create-your-first-submission -p /path/to/dest
Description

TODO

Issues

Closes: #TODO

Testing

TODO

Checklist

[ ] CI passed

https://github.com/microsoft/vscode/issues/146406


fix: migrate to ava for tests

What
fix: migrate to ava for tests

:tada: This PR is included in version 0.4.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Log exception on controller for realtime segment commit operations

Codecov Report

Merging #3226 into master will increase coverage by 0.01%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master    #3226      +/-   ##
============================================
+ Coverage     70.34%   70.36%   +0.01%
  Complexity        4        4
============================================
  Files           957      957
  Lines         44237    44241       +4
  Branches       5961     5961
============================================
+ Hits          31118    31128      +10
+ Misses        11049    11043       -6
  Partials       2070     2070

Impacted Files
Coverage Δ
Complexity Δ

.../helix/core/realtime/SegmentCompletionManager.java
69.05% <0%> (-0.63%)
0 <0> (ø)

...in/pinot/core/query/pruner/ValidSegmentPruner.java
57.14% <0%> (-28.58%)
0% <0%> (ø)

...mpl/dictionary/DoubleOffHeapMutableDictionary.java
65.45% <0%> (-12.73%)
0% <0%> (ø)

.../impl/dictionary/FloatOnHeapMutableDictionary.java
86.66% <0%> (-6.67%)
0% <0%> (ø)

...impl/dictionary/FloatOffHeapMutableDictionary.java
81.81% <0%> (-5.46%)
0% <0%> (ø)

.../controller/helix/core/SegmentDeletionManager.java
76.72% <0%> (-5.18%)
0% <0%> (ø)

...not/broker/broker/helix/ClusterChangeMediator.java
63.33% <0%> (-3.34%)
0% <0%> (ø)

...e/operator/dociditerators/MVScanDocIdIterator.java
60.6% <0%> (-3.04%)
0% <0%> (ø)

...inot/core/operator/docidsets/AndBlockDocIdSet.java
55.55% <0%> (-2.09%)
0% <0%> (ø)

...lix/core/realtime/PinotRealtimeSegmentManager.java
73.54% <0%> (-0.53%)
0% <0%> (ø)

... and 12 more

Continue to review full report at Codecov.

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

Planning to follow this up with an exponential back off (with upper limit on backoff time). Is that what you meant?


ADD: Emoji for Node Status

Show Node Status as Emoji on Node List:

💚 thorxxxx <- active
🗓 thorxxx <- standby
🛑 thorxxx <- deactive

Are active, standby, deactive the only three statuses that can occur?


Timestamp Handling Guidance

Are there any general guidelines for dealing with timestamps? Is the idea for users to get the raw int64 value from the underlying arrow, refer to the time_unit and timezone from the schema and handle any conversions on their end? Or is nanoarrow planning to offer some types of abstraction?

This might depend on the implementation? I would assume in C that the idea is indeed to let users deal with int64 values combined with the unit/timezone (is there an alternative), while eg the R or Python bindings could actually convert to native timestamp objects.
(although I assume your question is about the C code?)

Makes sense. My current use case is in the ADBC driver for Postgres where Postgres stores time stamps as an integer of microseconds since a 2000-01-01 epoch. Will mess around with that in the driver directly and come back to this if there's anything that feels like it makes sense upstream

I thought we added support for PostgreSQL timestamps in the driver already? https://github.com/apache/arrow-adbc/blob/1465aba08064509e62c1eef88f6add1b024147e3/c/driver/postgresql/postgres_copy_reader.h#L656-L668

Ah, right.

Yea this is concerned with the write. My initial thought was that if we could get the Arrow timestamps into a broken down time we could rather easily do the translation to the 2000-01-01 epoch using that struct, and that maybe nanoarrow wants to provide the utilities to do that.

Ah I see. That may come in useful eventually but I think there's no need to do that here.

Think this can be closed for now - thanks for the guidance!


Add codecs for refined types

See the discussion in https://github.com/travisbrown/circe/issues/101

Current coverage is 70.31%

Merging #103 into master will increase coverage by +0.25% as of 2de11fb

Powered by Codecov. Updated on successful CI builds.

This looks good to me, but do you think we should note that this is currently use-at-your-own-risk since the Shapeless versions are mismatched?

It is a bit risky right now with circe snapshots, although binary incompatibility seems unlikely (refined is only using a limited subset of shapeless features).
The next circe release awaits shapeless 2.3.0, right? I guess refined would have switched to it by that time. We just have to be careful to use the last refined version then. Maybe this should be noted in an issue for circe 0.3.0?

@alexarchambault I've been meaning to add a "warnings / known issues" section to the README, and I can mention the issue there. I'd prefer not to publish a release where different modules depend on different Shapeless versions, but let's assume for now that refined will be moving to Shapeless 2.3.0 shortly after its release as well.

That is a safe assumption. :-)


Fix 3 MSVS warnings in loader and layers.

warning C4389: signed/unsigned mismatch
warning C4701: potentially uninitialized local variable used
warning C4702: unreachable code

Fixed to static_cast, uploaded new commit. Is there a style guide for the loader or layers?
Also I wasn't able to get clang-format to work correctly, the diff I got seemed to change the formatting in a number of places that weren't the lines I had changed.

Thanks. Unfortunately there isn't a unified style guide at this point outside of running clang-format using the file in the repo. I've been an advocate of https://google.github.io/styleguide/cppguide.html with exceptions for things like line length which we agreed would be longer and tab width which is 4 but a good chunk of the layers don't follow this yet.
As far as clang format goes you should be able to run git clang-format --style=file which should pickup the .clang-format file but I have admittedly not used windows and thus haven't tried it there.

Naturally I'm a fan of the google guide as well. This modified .clang-format is what ANGLE does as well, it might be that the file is either out of date or my clang-format binary is different from the one you use internally. I'll let you guys handle the formatting side, thanks!

Cherry picked to master and pushed.


Add Commands::run_schedule

Systems (especially observers) should be able to queue the execution of schedules (which are essentially a special kind of exclusive system). It's currently possible to queue the execution of a system through Commands::run_system, but there's no equivalent Commands::run_schedule counterpart for World::run_schedule.
Off the top of my head, I can't think of any technical blockers.

Yeah, this should be trivial to implement. The schedule might fail to run if we're inside the same schedule, but that's normal for World::run_schedule.

Currently you can do (pseudocode) commands.queue(|world| world.run_schedule(...)), but I agree this would make sense as a built-in method.

commands.queue(|world| world.run_schedule(...))

We could make this a lint in bevy_cli to suggest simplifying the invocation.


add php 7.2 nightly into travis

I registered "php: nightly" into allow_failures to keep it green right now. There are some errors at php nightly job: https://travis-ci.org/bcit-ci/CodeIgniter4/jobs/257129181 that we may investigate later if we are going to support php 7.2+


Export DMN Decision Table to Image File (JPG, PNG, SVG)

Problem you would like to solve
I am need to share DMN decision tables with others who do not have DMN modelers.  Though there are raw Excel export plug-ins available, they do not capture all of the details of the decision table (including table name, hit policy, etc.).
Proposed solution
The Camunda Desktop Modeler currently has an image export for the DRD only.  Providing a similar function to export the selected Decision Table as either a JPG, PNG, or SVG would be helpful.
Alternatives considered
I have attempted using simple screen capture, but this approach only works for small Decision Tables that can be viewed in total.  Large Decision Tables cannot be captured in this manner as parts of the table are outside the view area.
Additional context
Using Camunda Desktop Modeler Version 5.7.0.

Thanks for opening this issue. What exactly is your use-case?

Thanks for opening this issue. What exactly is your use-case?

Thank you for looking into my request.
I am currently documenting business processes and rules in iGrafx (enterprise modeling platform) for our business users to collaborate and approve.  As part of the process BPMN, I have included business rules which are modeled in Camunda Modeler DMN.
My objective is to include a snapshot of the decision table for visual reference to allow them to view and comment within our modeling platform.  Unfortunately, our modeling platform cannot render a DMN file.

Thanks for providing further feedback. You could checkout Camunda Cloud as a place to share and edit these assets on the web, and potentially (and conveniently) link to your own process application. From there these documents can be shared conveniently, too.

From the core modeling perspective this sounds like an edge case and we'll likely not invest into this area in the near future. We believe that previews shall be interactive.
Moving to backlog for the time being.


Fix public link resolving on owncloud web

Description
OwnCloud Web was not able to resolve links.
This also fixes the # in the URL

Config example for vue router
https://router.vuejs.org/guide/essentials/history-mode


fix: fallback pgp key

Description
Fix fallback key

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.164.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add square matrix scaling graph

Adds a graph to the benchmarking README.md to show the time taken to multiply square matrices of increasing size.
Results CSV file, graph PNG and graph SVG file are included.

The performance of C naive with 10 threads is really interesting. Why does it lose some of its edge against single threaded when matrices get bigger?
Nothing to do with whether to merge this though.

The performance of C naive with 10 threads is really interesting. Why does it lose some of its edge against single threaded when matrices get bigger?

Thanks for the review. I'll merge in, but I'd also be interested to know the answer to your question.
In practice, it's losing its edge only in comparison with the transposed version, no? At the top end it's consistently faster than the non-transposed versions. Or am I misreading?
In this case, maybe it's a sign that the different memory cache levels are being exhausted?
Having reviewed these two, would you be up for taking a look at #40 as well? No obligation, but it would be great to get your feedback on it.

Rebased.