Digital signature from Microsoft is missing for the scripts

I am expecting Microsoft to digitally sign its powershell scripts. This might make the process in a rolling github relase more cumbersome. On the other hand the process of digitally signing the scripts can be automated. In the current state the unsigned script violates the execution policy on all Windows systems:
CouldNotAutoloadMatchingModule - script not signed!

I can consider this, but it will still prompt to trust the publisher. Feedback in the past for OSS PowerShell modules I've done is to not sign (if this were developed internally and released it certainly would be).

Thanks for considering. Actually I assumed that Microsoft signed Powershell Scripts are trusted for everyone. For me the signment is the next logical step when the scripts can be conveniently downloaded via git automation in one command.

Nope. All PowerShell scripts regardless of signer prompt to trust the publisher. Now, if the publisher is the same and already trusted from another script it should just work.
But what do you mean about "git automation in one command"? I do publish these to http://powershellgallery.com so you can use install-module vssetup (with default sources, or even specify a source if you want to constrain to just the gallery). Whether signed or not won't change any of those prompts. You can also call Set-ExecutionPolicy Bypass (or whatever policy) on a build or start powershell.exe -executionPolicy bypass to aovid those cases. The latter is what we typically do to avoid surprises from machine to machine.

My fault, I assumed that git was the source used by "install-module vssetup". In this context of more or less "trustworthy" repositories the digital signature makes sense to me. I am fine if this means I must accept the signer "Microsoft" once for the machine.
I know your time is precious: but do you have any idea how the edition of the installed visual studio can be identified? The VS Installer does not install a software id tag for identification (ISO 19770-2). I am also a bit puzzled that the WMI class SoftwareLicensingProduct will not reveal any info about the installed Visual Studio Edition. From the perspective of asset management solutions it would be highly recommendable to just use one mechanism to report the Edition for all Microsoft products. Here the Office did establish the WMI approach and it would be nice if the dev teams for all other products would just adopt that.

The installer is not really VS-specific, so there's no concept of edition. You can, however, Product property of an instance which includes the package ID as follows:

Edition
Package ID

Community
Microsoft.VisualStudio.Product.Community

Professional
Microsoft.VisualStudio.Product.Professional

Enterprise
Microsoft.VisualStudio.Product.Enterprise

These are documented also at http://aka.ms/vs/workloads
I can backlog those ideas for consideration in the future. The WMI class is for products that use Windows licensing service. Visual Studio has not and does not use this service. We have our own licensing model.

Many thanks!
Is MsiGetProductInfo from the msi.dll the correct approach to get these properties? Our clients are purely C++ and I need to access the product properties from there.
It would be nice to backlog my input. Right now the situation is that the identification of the Editions for Windows, SQL Server, Exchange, Visual Studio and others are all very different. For Visio, Office and Project we have the WMI approach via SoftwareLicensingProduct. It would be nice to consolidate on WMI because this information can be verified by humans via wbemtest. This way customers, auditors and tools can independently verify the information.

MsiGetProductInfo is only for Windows Installer packages. We install very few anymore, instead opting for a ZIP format with optional additional - but limited - processing for a nearly xcopy-deployable installation. As a result, there are different ways of detecting editions and they are different across products because each uses different installers. We are considering ways of exposing information in a more consistent manner, but it definitely would not be through the SoftwareLicensingProduct class because we don't use that infrastructure. Perhaps a CIM_Product derivative, like Win32_ComputerSystemProduct and Win32_Product (MSIs). Still, neither have edition because edition is specific to a product, and MSIs and our new installer install products that don't always have an edition. But the Product property is effectively equivalent as shown in the table above. You can either extract the string edition, or just treat the opaque string as the edition since they are equivalent representations.

With simplicity and file orientation in mind I would really prefer the software id tags of ISO 19770-2. Just include the file with the ending swidtag in the installation package. Even products using keys to unlock specific features could use these simple xml files to document their licensing state. If the unlocking changes the Edition then the xml file just has to be rewritten by the unlock process. Most SAM tools should support these tag files because it is an official ISO standard. In my opinion the easiest approach to support external asset management solutions. Thanks for listening!


Question about num_timestep

In the code, there is this "num_timesteps" in the constructor of the ReplayMemoryDataset class. Does this "num_timesteps" correspond to the concept of "window" in the paper? In my understanding, the q function proposed in the paper only takes states within the window range (s_{t-w} to s_t) and feed them into the transformer instead of using all of the previous states. Is this interpretation correct? I am confused because in the code, the default "num_timesteps" is 1, which, in my understanding won't encode any sequential info.

@YifeiChen777 hi Caroline, yes you need to set that to greater than 1 for the autoregressive Q-learning

When I change num_timestep = 50, a problem of tensor size mismatch occurs
RuntimeError: The size of tensor a (200) must match the size of tensor b (10000) at non-singleton dimension 0

@Johnly1986 could you try again on the latest version?

I used the latest version, and the tensor size mismatch caused by num_timestep no longer exists, but it automatically exits after running for a while.

in autoregressive_q_learn() method of QLearner the time steps dimension is moved into batch dimension. E.g. if we have a batch of 16 samples with 3 timesteps each - this will be converted into a batch of 48.
    # fold time steps into batch
    states, time_ps = pack_one(states, "* c f h w")
    actions, _ = pack_one(actions, "* n")

It looks like all the next learning does not take into account history and treats each element of a batch independently because attention mechanism seems to not span across the batch dimension. Thus, if every item in a batch attends only to itself (and cross-attends to encoded_state but still within a single item of a batch), the model does not see and will not recognize any inter-timestep dependencies. Please correct me if miss something?

hi, yes this is correct afaict.
this is why in the todo section in the readme i have written improvise cross attention to past actions and states of timestep, transformer-xl fashion (w/ structured memory dropout)
are you able to get things working with just single frames? i'm happy to add transformer-xl component for you if you have everything setup

@yuriy10139 also, you should reach out to @2M-kotb, as i think he was playing around with the repo for his research some time back

in autoregressive_q_learn() method of QLearner the time steps dimension is moved into batch dimension. E.g. if we have a batch of 16 samples with 3 timesteps each - this will be converted into a batch of 48.
    # fold time steps into batch
    states, time_ps = pack_one(states, "* c f h w")
    actions, _ = pack_one(actions, "* n")

It looks like all the next learning does not take into account history and treats each element of a batch independently because attention mechanism seems to not span across the batch dimension. Thus, if every item in a batch attends only to itself (and cross-attends to encoded_state but still within a single item of a batch), the model does not see and will not recognize any inter-timestep dependencies. Please correct me if miss something?

hi, yes this is correct afaict.
this is why in the todo section in the readme i have written improvise cross attention to past actions and states of timestep, transformer-xl fashion (w/ structured memory dropout)
are you able to get things working with just single frames? i'm happy to invest some time building out transformer-xl component for you if you have everything setup, and willing to share your experimental results

I've prepared a small demo in a separate repository https://github.com/yuriy10139/q-transfromer-maniskill-demo
Currently a bit short of compute, so I have tried it just once on my laptop without any hyperparameter search and on 112x112 image from a single camera (Maniskill env default is 128x128, so I guess that is not that bad).
The metrics are 4.054, 4.647, 4.568 for the 4000-step, 7000-step and 1000-step checkpoints respectively, so probably the model learns something, but still it is quite far from well-trained.

@yuriy10139 thank you! i'll add a few things soon


Add splash:send_keys() method

This set of commits adds support for native send_keys method.

Current coverage is 85.98%

Merging #447 into master will increase coverage by +0.02% as of be12aad

@@            master    #447   diff @@
======================================
  Files           40      40
  Stmts         4765    4774     +9
  Branches       653     653
  Methods          0       0
======================================
+ Hit           4096    4105     +9
  Partial        159     159
  Missed         510     510

Review entire Coverage Diff as of be12aad

Powered by Codecov. Updated on successful CI builds.

Some questions:

Should we support Key Modifiers to go along with key presses? (like Ctrl + Shift) Can't think of a valid usecase except for automatic usage of webapps that might have keyboard shortcuts.
This isn't handling a usecase with a selector. Assumedly, it would work like:

Find selector element, click
send keys
element blur? Maybe not necessary

Added support for click command with selector (https://github.com/scrapinghub/splash/pull/438#issuecomment-206790014)
Added support for selector on send_keys command

Maybe we should discuss the signature for send_keys function
It currently accepts text, selector (def: None) and key_type (def: None)
Some users may want to send raw send_keys like
splash:send_keys('', nil, 'Tab')

but expecting a nil to call it maybe is ugly.
Reference for key types can be found at http://doc.qt.io/qt-5/qt.html#Key-enum

In Emacs, for example, there's a "keyboard macro" format which uses spaces as non-obligatory separators between keys which is good for describing both single and multiple keystrokes and which I find quite easy on the eyes.

I like that format too, but implementation won't be straightforward. Current implementation is quite easy because we directly support http://doc.qt.io/qt-5/qt.html#Key-enum key names, input unknown key by default and do not support modifiers. I worry this would take much, and the issue I'm trying to fix is starting to be a bit urgent (about that, the issue can be fixed with just current send_keys, no key types nor modifiers needed).
Maybe we can think on the simplest for now and leave a better syntax for the future (with selectors and so on) like with mouse_click?
If that was the case I could simply remove support for key types. Mouse clicking to coordinates and direct input of text can cover at least 80% of the cases.

With @immerrr contribution https://github.com/scrapinghub/splash/pull/456, we've got now support for a limited subset of the syntax for keyboard macros on emacs. That goes under send_keys.
Added a shortcut that does not need the syntax, to avoid using SPC too much (specially when handling input from outside of splash, where it might come with spaces or not). That goes under send_text.
@kmike Does this API look cooler?
splash:send_keys('TAB Hello SPC World RET`)
splash:send_keys('<Tab>')
splash:send_text('Hello World')
splash:send_keys('<Return>')

The new API is very cool 👍
Could you please add a couple more tests?

A test for non-ascii characters (both for send_keys and send_text);
a test for entering text which contains \n;
a test for send_text which checks that text like RET can be sent;
tests for DEL and ESC keys.

It also needs docs.

Just missing docs

Added docs
Made all waits on tests 0
Are there too many tests? Maybe I can cut them down.
Anything missing?

@kmike @immerrr All should be good now. Anything missing (more tests, remove tests, etc). Also worth checking if documentation is good: https://github.com/scrapinghub/splash/blob/89e22570acbc005d5c44378bbb3693407a3fceb8/docs/scripting-ref.rst#splashsend_keys
Also, I can squash all commits into one if that's better

Also, I can squash all commits into one if that's better

I'd say it is. @kmike ?

squashed commits
rebased master
updated docs

Awesome work, thanks @eskerda and @immerrr!


Dedicated server crashes

3.7 release candidate is showing some crashes with the dedicated server as reported here. Symptoms in Linux are slightly different - the dedicated server console is unresponsive, but the engine still functions normally, and can act as a host.

Problem is in here:
void postConsoleInput( RawData data )
{
   // Schedule this to happen at the next time event.
   ConsoleValueRef argv[2];
   argv[0] = "eval";
   argv[1] = ( const char* ) data.data;
   Sim::postCurrentEvent(Sim::getRootGroup(), new SimConsoleEvent(2, argv, false));
}

The first assignment causes an assert in ConsoleValueRef::operator=. @jamesu? This pattern seems to be used in a couple of places. Wondering if this is a correct use of ConsoleValueRef. The comment on the class indicates:
// Can point to existing console variables,
// or act like a free floating value.

But I see no ways to construct a new value for it, only to assign it from an existing ConsoleValue.

Further, for example, this constructor:
ConsoleValueRef::ConsoleValueRef(const char *newValue) : value(NULL)
{
   *this = newValue;
}

Will cause this to happen immediately:
ConsoleValueRef& ConsoleValueRef::operator=(const char *newValue)
{
   AssertFatal(value, "value should not be NULL");
   value->setStringValue(newValue);
   return *this;
}

...won't it?

Indeed, the ConsoleValueRef should point to a ConsoleValue. e.g.
ConsoleValue values[2];
ConsoleValueRef refValues[2];

values[0].init();
values[0].setStringValue("eval");
values[1].init();
values[1].setStringValue((const char*)data.data);
refValues[0].value = &values[0];
refValues[1].value = &values[1];

This behaviour was previously changed due to the previous issues regarding storing new stack values in ConsoleValueRef.

Okay, I get it. I figured something like that was the case, but the intent of the code is unclear. How do you feel about my second comment? Is the const char* constructor a bug?

Encountering this issue with the oculus stuff in a windowed console. Is anyone making a patch or should I do it?

I was going to, but my time has been scant recently. Thanks for that!


Migrate new entity definitions

Relevant information
Migrate entity definitions.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Irene Lopez seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


fix windows os_name marker in doc advanced.rst

See https://docs.python.org/dev/library/platform.html#module-platform and https://docs.python.org/2/library/os.html#os.name

Hi@kennethreitz,
why did this merge request get closed. The current documentation is incorrect:


Admin Dashboard Service List Feature Enhancement

A clear screen will be displayed when "select" field  is submitted. #22

Bug in status column fixed.

The added feature is working properly


issue doing shell completion in a non login shell

/home/deploy/.rbenv/libexec/../completions/rbenv.zsh: line 1: compctl: command not found
in a non login shell (during a deploy) and it threw this. Anyone want to help figure it out? :P

please gist the contents of all dotfiles relating to zsh, I'm happy to take a look.

https://github.com/imajes/portable-env should probably cover it

Do you have anything interesting in .profile? It doesn't seem to be in that repo but it is sourced my .zprofile

Well, "compctl is the old, deprecated way to control completions for ZLE."
http://zsh.sourceforge.net/Doc/Release/Zsh-Modules.html#The-zsh_002fcompctl-Module

I'd be willing to merge a pull request that updates rbenv to transparently support both modes of zsh autocompletion. Until then, we'll stick with compctl, which is the one that actually works by default on my OS X machine.

The old zsh autocompletion worked just fine for me in 4.3.11 after fixing the first line, renaming the file to _rbenv and adding it to $fpath.  See #47

Actually, that pull request is a different fix, assuming you want to source the file, not add _rbenv to $fpath.  The needed fix would be to change "#compdef _rbenv rbenv" to "#compdef rbenv".

It needs to work transparently using the installation instructions that already exist for rbenv. We don't want any additional requirements for zsh users, like having to manually source a completion file in zshenv.

@sstephenson: in this instance, during a deploy, i don't especially need the completions (as best as I can tell). I'd advocate a patch then that only does the completion if it can run compctl; or restricting only to full tty connections.
something like that work?

Sure, that's a good first step.


It's not working anyway

Hi, bro, ur idea is very incredible. Piper is super light TTS plugin. When I found your project, I was very surprised and happy.
But i have bad news - it's not working anyway.
When I use ur compieled piperlib.dll i get this error:
Failed to load 'Assets/ExternalAssets/UnityPiper-master/Plugins/Windows/piperlib.dll', expected x64 architecture, but was Unknown architecture. You must recompile your plugin for x64 architecture.
Okey, i download ur fork of original Piper repo. I run make file with VSC 2022 and get my instance of dll, but when i add this dll, i get another error:
Plugins: Failed to load 'Assets/ExternalAssets/UnityPiper-master/Plugins/Windows/piperlib.dll' with error '%1 is not Win32 application.
When i build ur C++ project, i see many warngings, something like this:
F:\piper-master2\src\cpp\piperlib.hpp(38,60): warning C4190: C-binding is specified for "getSynthesisConfig" but returns
The UDT type "piper::SynthesisConfig" is incompatible with the C language [F:\piper-master2\build\piperlib.vcxproj]

and
F:\piper-master2\src\cpp\piperlib.cpp(25,47): warning C4273: create_PhonemizeConfig: incompatible dll linking [F:\p
iper-master2\build\piperlib.vcxproj]

Maybe i need to build it with gcc -w64?
Also i analyse your code. Why do you use PIPER_API __declspec(dllimport) instead of PIPER_API __declspec(dllexport)? I'm really not competent enough in developing C++ plugins, but when I had to do it, I used the dllexport.
I use Windows 11, Visual Studio 2022 & VSC, Unity 2002.3.20f1
If it's realy works, i think u can compile dll's for any platforms. After this, ur repo bacome really very usefull.

Okay, I also have some recommendations for you regarding C# code. Here my competencies are quite strong.
Never do the following:
public static Task<Piper> LoadPiper(string fullEspeakDataPath)
{
            if (!Directory.Exists(fullEspeakDataPath))
                throw new DirectoryNotFoundException("Espeak data directory not found");

            return Task.Run(() =>
            {
                var piperConfig = PiperLib.create_PiperConfig(fullEspeakDataPath);
                try
                {
                    PiperLib.initializePiper(piperConfig);
                    return Task.FromResult(new Piper(piperConfig));
                }
                catch
                {
                    PiperLib.destroy_PiperConfig(piperConfig);
                    throw;
                }
            });
}

You never handle an exeption in this task. In my case i don't get any exepction, beacuse you simple throw it. Good practics in this case use Debug.LogError or another logger. Also for nonmanaged code good practics use global try-catch, with listed catches. For example, my execption thrown in PiperLib.create_PiperConfig(fullEspeakDataPath); and what i see in unity? Nothing. I just press context menu button and get nothging. No result, no error. This is a bad practics.

Okey, it's work fine with compile via MinGW

Well, no, actually this function you shared is correct, the problem lies within calling function of example project. For some reason, Unity doesn't print exception messages when I return Task from context menu method. Explanation below. Fix is on it's way.
Check out this docs for exceptions inside Task.Run
https://learn.microsoft.com/en-us/dotnet/standard/parallel-programming/exception-handling-task-parallel-library
Unhandled exceptions that are thrown by user code that is running inside a task are propagated back to the calling thread
When you call an async method, you just need either use await, or manually check if an exception is thown in all the cases. In my example I use await, so if exception happened inside Task.Run block that is absolutely correct and intended.
The problem why you didn't see exception, is because I added Task as return type in Run() method in my test script. To be honest, I didn't expect Unity to handle it this way. I'll push a fix in a second. Sorry for this :)

Perhaps you misunderstood me, when any call to the Run method with a task return value, you will not receive an exception, because there is no expectation in the calling method. There is nothing surprising in how this works, because regular calls to this task “as a method” will lead to a similar result. And you won't get an exception from the calling thread. After all, a call from any other asynchronous method works quite correctly, and that’s why I thought that’s what you intended, which is why I said about additional logging. Any synchronous call will result in loss of logs. And in general, I was pointing out that this example is not very user-friendly.
In general, another reason why I paid attention to this is the fact that this can happen when working with callbacks or reflection. You may say that these are specific cases, but many developers use, for example, dependency injection or a promise system, and such an API, due to the carelessness of the developer, can lead to a similar result with the loss of logs. Therefore, it is good practice to add logging.
There's also the problem that even if it's done asynchronously, when you throw an exception, it interrupts all further execution in the root calling method, which isn't always convenient because you end up crashing all the other business logic because of one module. But this is a matter of taste. In fact, your example is quite convenient to use in another asynchronous method, but it may be necessary to call it in a synchronous method, this could be done implicitly, for example, during dependency injection, in a promise system, and then the logs will also be lost.
In any case, I wanted to say that this is not a user-friendly API. I would make one entry point, at which I would pass as parameters what I want to say: text, path to the model, link to AudioSource, and so on. And I had you choose between RunAsync and Run synchronously. In synchronous execution I can just say “hey dude do this, I won’t wait for the result, just do it”, but in asynchronous I would need to wait. And with this approach, adding logging sounds like a good idea; this could be done in the API call method itself, handle exceptions in the form of a try-catch list and, if necessary, make a Dispose unmanaged resoruces.

Thank you for letting me know about all these issues. How did you clone the repo? This error
I fork ur repo, bacause i want to add global API which I mentioned above.
To be honest, this is the first time I have come across something where LFS breaks DLL. Usually when I saw such errors, it was due to incorrect compilation of the dll file.
Yes, you are absolutely right, if you add the package through the package manager everything works perfectly.

Perhaps a little later I will try to compile for several platforms. And give users ready-made bindings for many platforms.
Thx for your answer! Your repositories Piper, LLama and Whisper helped me a lot in saving time, they are very useful and interesting.

Thank you! I appreciate any help.
Also, thank you for pointing out the missing exception logging. As you saw, I've fixed that in the example. When you open context menu of the Example component and click "Run Stream" Unity calls the method Run() and unity is supposed to handle its exception in the same way as exceptions inside Update/Awake and other are handled, now this works.
I understand your point. But I would prefer not to add such logging into the library code, as many people, including myself, prefer not to flood the console with logs from external libs. An exception simply indicates that a particular operation has failed. The client code decides how to handle it: print it in the logs, show a message, silence it, or call the same method with different arguments. Printing logs to the console is an attempt to decide the handling for the user, which is not always appropriate.
I suppose, in any case, you will have an asynchronous method similar to the Run() from the example, where you can take care of proper exception handling. The library just signals that something had failed, it doesn't decide for you, how to handle this.
I'm glad you find the plugins handy. But at this moment, the Piper is in the best state right now.
Llama package requires an update, as the recent version have changes Context structure. It works, but only with the older versions of the lib.
Whisper package is actually not finished, it works, but slow and may skip words from your speech.

Yes, as I said earlier regarding logging, it’s a matter of taste. Again, I’ll clarify that all of the above concerned only the first example, which was before your edits. Everything is fine now.
Perhaps, in general, I agree with you. In fact, Piper gave me quite a headache with various problems during the integration process. Therefore, a lot of things irritated me and in my impulse I decided to express it here.
In any case, I thank you for not ignoring some advice and responding constructively.
Regarding LLama and Whisper, I have already noticed some problems with them. For example, the version of LLam from the official repository works noticeably faster. In your example, with each new request the model is reloaded, which slows down the work even more. It is very difficult to fully check the work of LLama due to huge lags. Moreover, I caught three crashes during tests. This is no good.
So, I'm currently moving the official LLam repository with C# Bindings. Now it seems that your implementation runs on the CPU, because on my RTX 3080Ti, generating one request takes about 1-2 minutes, while in the original implementation it takes only a few seconds. Yes, and there is no choice on what to launch. While in the original implementation there are separate dll files for the CPU, GPU, CUDA of different versions and so on.
Regarding Whisper, there are also C# Bindings for it, which work quite well. Perhaps as a result of my work it will be possible to solve all the problems and give the Unity user a convenient tool.
However, your repository is the only ready-made C# bindings that I could find. Other implementations involve communicating with the original application via sockets, which, you see, will not be very convenient for gamers.


Ip block

Aside from the tabs/spaces debacle, enable firewall rules access. Pagination to override default 20 records minimum is implemented for firewall rules, deviating from the original model for dns_records. afaict it would make sense to apply such functionality to dns_records as well, but that is not addressed in this PR.

Closing to address whitespace first.


Point queries should be documented

Discussed in https://github.com/bevyengine/bevy/discussions/3169
I came across an issue because I didn't know about point queries (e.g. Query::get).  They don't seem to be documented in the book, the unofficial book or the ecs_guide example.

Absolutely! They're covered in depth in the ECS chapter of the new book (https://github.com/bevyengine/bevy-website/pull/182), which will be released with 0.6.

Sounds great!


issue 506.1: address issue with multiple identical document insertions on rocksdb recovery

http://jenkins01.arangodb.biz:8080/job/arangodb-matrix-pr/2216/


webview self close tag

It seems that:
<webview src="https://www.github.com/" />

would rendered into this:
<webview src="https://www.github.com/">

</webview>

So why could not use self close tag with webview?

Making webview a void element would require patching Blink, which is Not Worth It

This is a decision made by Chromium, I suggest discussing this on Chromium's issues list or the chromium-dev mailing list.


ModuleInitializers failed + Failed to create activation context

Since some days i am getting following errors, not always the same, sometimes it works to inject...
Backslashes got stripped on my logging routing, i used the BLACKBONE_TRACE to forward the messages into an errormsg buffer that i just look at if something goes wrong.
I am not Using the driver, all usermode!
Variant 1:
[::Blackbone::] PDB: Failed to load msdia140.dll, error 0x0000007e
[::Blackbone::] PDB: blackbone::PDBHelper::Init: (CoCreateDiaDataSource()) failed with HRESULT 0x8007007e
[::Blackbone::] ManualMap: Mapping image 'MemoryImage_0x07AE2020' with flags 0x1084
[::Blackbone::] ManualMap: Loading new image 'MemoryImage_0x07AE2020'
[::Blackbone::] ManualMap: Image base allocated at 0x000000003ad80000
[::Blackbone::] ManualMap: Failed to create activation context for image 'C:WINDOWSTEMPImaB4B.tmp'. Status: 0xc0000022
Variant 2:
[::Blackbone::] PDB: Failed to load msdia140.dll, error 0x0000007e
[::Blackbone::] PDB: blackbone::PDBHelper::Init: (CoCreateDiaDataSource()) failed with HRESULT 0x8007007e
[::Blackbone::] ManualMap: Mapping image 'MemoryImage_0x07273FC8' with flags 0x1084
[::Blackbone::] ManualMap: Loading new image 'MemoryImage_0x07273FC8'
[::Blackbone::] ManualMap: Image base allocated at 0x0000000010000000
[::Blackbone::] ManualMap: Performing image copy
[::Blackbone::] ManualMap: Relocating image 'memoryimage_0x07273fc8'
[::Blackbone::] ManualMap: No need for relocation
[::Blackbone::] ManualMap: Loading new dependency 'd3dx9_43.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32d3dx9_43.dll'
[::Blackbone::] ManualMap: Loading new dependency 'msvcp140.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32msvcp140.dll'
[::Blackbone::] ManualMap: Loading new dependency 'xinput1_3.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32xinput1_3.dll'
[::Blackbone::] ManualMap: Performing security cookie initializtion for image 'memoryimage_0x07273fc8'
[::Blackbone::] ManualMap: Performing static TLS initialization for image 'memoryimage_0x07273fc8'
[::Blackbone::] ManualMap: Failed to initialize static TLS for image memoryimage_0x07273fc8, status 0xC000004B
Variant 3:
[::Blackbone::] PDB: Failed to load msdia140.dll, error 0x0000007e
[::Blackbone::] PDB: blackbone::PDBHelper::Init: (CoCreateDiaDataSource()) failed with HRESULT 0x8007007e
[::Blackbone::] ManualMap: Mapping image 'MemoryImage_0x05477FE8' with flags 0x1084
[::Blackbone::] ManualMap: Loading new image 'MemoryImage_0x05477FE8'
[::Blackbone::] ManualMap: Image base allocated at 0x0000000010000000
[::Blackbone::] ManualMap: Performing image copy
[::Blackbone::] ManualMap: Relocating image 'memoryimage_0x05477fe8'
[::Blackbone::] ManualMap: No need for relocation
[::Blackbone::] ManualMap: Loading new dependency 'd3dx9_43.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32d3dx9_43.dll'
[::Blackbone::] ManualMap: Loading new dependency 'msvcp140.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32msvcp140.dll'
[::Blackbone::] ManualMap: Loading new dependency 'xinput1_3.dll'
[::Blackbone::] ManualMap: Dependency path resolved to 'C:WINDOWSsystem32xinput1_3.dll'
[::Blackbone::] ManualMap: Performing security cookie initializtion for image 'memoryimage_0x05477fe8'
[::Blackbone::] ManualMap: Performing static TLS initialization for image 'memoryimage_0x05477fe8'
[::Blackbone::] ManualMap: Calling entry point for 'memoryimage_0x05477fe8', Reason: 1
[::Blackbone::] ManualMap: ModuleInitializers failed for 'memoryimage_0x05477fe8', status: 0xC0000022
and yes, i ignored the fact that msdia140.dll is missing, but it was missing for quite some time now and just worked fine.

Problem 1 can be solved by just adding the NoSxS Flag.


Safari icons for NSwiki and World Assembly not showing up

pretty much described in the title line. the icons arent showing up, but the vanilla icons are, with them all shifted to the left to make it 'fit' some non-existent icons. the text for WA and NSwiki show up, and you can click on them, which is the only way you can select the two functions

Could you perhaps provide a screenshot?

Only in Safari though.


Add eachArrayLike to Groovy DSL

As mentioned here:
https://stackoverflow.com/questions/42164666/pact-matcher-how-to-use-each-like-for-an-array-of-arrays-values
"eachLike in the Groovy DSL only supports arrays of objects. If you use the Java DSL, there is a eachArrayLike method that can help you."
Could we have eachArrayLike in Groovy DSL pls?
BTW, why are java and groovy versions inconsistent? Are there more inconsistencies? It Groovy implementation always behind Java one? Is it "safer" to use Java DSL?

The Java and Groovy DSLs are different implementations, Groovy provides much richer support for DSLs. Most of the methods in the Java one (like closeObject() and closeArray()) exist because of this, there is no equivalent in the Groovy DSL.
But this does mean that features asked for in one implementation might not get added to the other.

Could you provide an example of your requirement, the one from the SO question is a bit confusing.

Example:
A form with answers where an answer:

can be a simple answer (questionId-answer object)
can have more complicated structure. In particular "answer" can be an array of arrays, each consisting of multiple simple answers. In simpler scenario all inner arrays have a fixed "list" of answers (fixed set of question ids). In more complicated scenario inner-arrays can consist of variable number of answers (different set of question ids for each inner array).

Example form json (made up obviously :) so pls forgive me if it doesn't make much sense):
answers: [
{questionId:"name", answer: "James"},
{questionId:"surname", answer:"Bond"},
{questionId:"books", answer: [
  [
       {questionId:"title", answer: "AAAAA"},
       {questionId:"author", answer: "A.A."},
       {questionId:"co_author", answer: "A.A.2"},
       {questionId:"isbn", answer: "978-3-16-148410-0"}
   ],
  [
       {questionId:"title", answer: "BBBB"},
       {questionId:"author", answer: "B.B."}
   ]
]}
//more answers here
]

Currently it's impossible to define requirements for "answer" field for "books" question. The only viable way is to provide a hardcoded example of the inner array, if I'm not mistaken. That gives us a Closure that looks like this:
{
answers minLike(1) {
  questionId string("books")
  answer eachLike( [
       {
        questionId "title"
        answer "BBBB"
       },
       {
       questionId "author"
        answer "B.B."
       },
  ] }
}

and is far from perfect :( Among other problems it's impossible to use matchers for sub-answers. It also forces our provider do deliver the exact response we've hardcoded.
Having eachArrayLike() in Groovy DSL and being able to define requirements for unordered lists with multiple elements (https://github.com/DiUS/pact-jvm/issues/506 , https://github.com/pact-foundation/pact-specification/issues/38) would be AWESOME. Having both would allow us to define all our requirements in 1 pact test 🏆 🏆 🏆  Looking forward to this :D
Hope above example makes sense for you and I didn't make any mistakes building example json and example Closure :) Thx!

I've implemented support of using eachLike with arrays at the root level. Next I'll see if I can get your example working.

Great news! Thank you :)

With this change you will be able to do something like
{
answers minLike(1) {
  questionId string("books")
  answer eachArrayLike {
        questionId string("title")
        answer string("BBBB")
  }
}

Version 3.5.9 has been released

Thx, works great! :)


How to train ?

Hi there,
When do you release the complete training process, and also the train YML file?

Thanks for the test model provided.  I also look forward to your update on the training process and YML file.

Thanks for the test model provided.  I also look forward to the update on the training process and YML file.


In memory DB seeding

Calling EnsureCreated() with InMemoryDb will seed the database, but when you try to insert another row it will just reuse the Id and fail.
Also happens if you call EnsureCreated() twice
Exception message: System.ArgumentException: An item with the same key has already been added. Key: 1
Stack trace:
at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
   at Microsoft.EntityFrameworkCore.InMemory.Storage.Internal.InMemoryTable`1.Create(IUpdateEntry entry)
   at Microsoft.EntityFrameworkCore.InMemory.Storage.Internal.InMemoryStore.ExecuteTransaction(IReadOnlyList`1 entries, IDiagnosticsLogger`1 updateLogger)
   at Microsoft.EntityFrameworkCore.InMemory.Storage.Internal.InMemoryStore.EnsureCreated(StateManagerDependencies stateManagerDependencies, IDiagnosticsLogger`1 updateLogger)

Further technical details
EF Core version: 2.1.2
Database Provider: Microsoft.EntityFrameworkCore.InMemory
Operating system: Windows 10
IDE: Visual Studio 2017 15.8.1

I guess it's a duplicate of https://github.com/aspnet/EntityFrameworkCore/issues/12950

@domagojmedo It looks to me like you are hitting #6872, and then #12950 when calling EnsureCreated twice.


Bokeh DataTable

I am attempting to add a Bokeh DataTable object via Flexx. Because it uses a ColumnDataSource, I assume that we can make it work very similarly to the BokehWidget for plots. Just as we create a figure, we can create a DataTable from a ColumnDataSource:
x_table = [randint(0, 100) for i in range(10)]
y_table = [randint(0, 100) for i in range(10)]
total = np.sum([x_table, y_table], axis = 0)

self.datatable_source = ColumnDataSource(dict(x=x_table, y=y_table, total = total))
datatable_columns = [TableColumn(field="x", title="x"),
                    TableColumn(field="y", title="y"),
                    TableColumn(field="total", title="total")]
self.data_table= DataTable(source=self.datatable_source,
                            # columns=datatable_columns,
                            width=600, height=600, editable = True)

I have created a modified BokehWidget object which works very similarly to the BokehWidget for plots:
def make_bokeh_widget_from_data_table(data_table, **kwargs):
    ns = {}
    exec("from bokeh.models.widgets import DataTable", ns, ns)  # noqa - dont trigger e.g. PyInstaller
    exec("from bokeh.embed import components", ns, ns)  # noqa - dont trigger e.g. PyInstaller
    DataTableClone, components = ns["DataTable"], ns["components"]
    # Set plot prop
    if not isinstance(data_table, DataTableClone):
        raise ValueError('plot must be a Bokeh plot object.')
    # The sizing_mode is fixed by default, but that's silly in this context

    # if plot.sizing_mode == 'fixed':
    #     plot.sizing_mode = 'stretch_both'

    # Get components and apply to widget
    script, div = components(data_table)
    script = '\n'.join(script.strip().split('\n')[1:-1])
    widget = BokehWidgetAdapted(**kwargs)
    widget.set_table_components(
        dict(script=script, div=div, id=data_table.ref['id']))
    return widget

class BokehWidgetAdapted(BokehWidget):
    @classmethod
    def from_data_table(cls, data_table, **kwargs):
        """ Create a BokehWidget using a Bokeh plot.
        """
        return make_bokeh_widget_from_data_table(data_table, **kwargs)

    table = event.Attribute(doc="""The JS-side of the Bokeh plot object.""")

    def _render_dom(self):
        return None

    @event.action
    def set_table_components(self, d):
        """ Set the plot using its script/html components.
        """
        global window
        # Embed div
        self.node.innerHTML = d.div  # We put trust in d.div
        # "exec" code
        el = window.document.createElement('script')
        el.innerHTML = d.script
        self.node.appendChild(el)
        # Get plot from id in next event-loop iter
        def gettable():
            self._table = window.Bokeh.index[d.id]
            self.__resize_table()
        window.setTimeout(gettable, 10)

    @event.reaction('size')
    def __resize_table(self, *events):
        if self.table and self.parent:
            if self.table.resize_layout:
                self.table.resize_layout()
            elif self.table.resize:
                self.table.resize()  # older
            else:
                self.table.model.document.resize()  # older still

To get these widgets working, the bokeh-tables.js, bokeh-widgets.js and bokeh-mathjax.js files are associated using app.assets.associate_asset. We can then try to add the Bokeh DataTable object:
self.table = BokehWidgetAdapted.from_data_table(self.data_table, title='Table')

This partially works! The table is rendered on the page, but the data is blank and no errors are thrown. Is there something I am missing here? I think this would be a great widget to add to Flexx to have support for tables via Bokeh. I think it should be extendable to most Bokeh widgets such as buttons, checkboxes, etc.

Looks cool! I don't have a lot of time to look at this now though ...


properties/linkage of bycatch with the ability to become a sample needs to be supported

properties/linkage of bycatch with the ability to become a sample needs to be supported
Originally posted by @Simo-climb in https://github.com/AGLDWG/phs-ont/pull/20#discussion_r618872861

see #25

Now that we cleanly record specimens using TaxonOccurrence, we don't need the Bycatch concept at all.


messages: Update new user signup notification.

Previously, new user sign up notification message was -

@some user just signed up for Zulip. (total: N).

Since there are other ways to see the number of users , updated the code to -

@some user joined this organization.

Fixes: #28834.

Screenshots and screen captures:
Previously -

Presently -

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Thanks!
@timabbott I haven't tested, but the screenshots look good, an it might be easy to review?

Looks great, merged, thanks @shashank-23002!


Fix names in makefile example

Fixed a couple variable name typos in the makefile example in building-and-registering.md.

@KevinSWork : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Sending a MultipartPayload always does a POST

It's currently not possible to send a MultipartPayload request via PUT or PATCH, it always overrides it to a POST request. Is this expected, or a bug?

It's definitely a bug! I've just fixed it in v.1.11.1, thanks!

Great, thanks! Looking forward to a new version on Cocoapods :)

@kevinrenskers yeah, just uploaded it, you could update now 🙂

Hm I updated to 1.11.1, but it's still sending my request via POST.
func updateUser(_ payload: EditUserData) -> APIRequest<User> {
  return APIRequest("user/", payload: serverPayload).method(.put)
}

(where EditUserData is a MultipartPayload struct)
🌸 [CodyFire]: PUT to http://minotaur.local:8000/api/user/
🌸 [CodyFire]: Response: 405 on PUT to http://minotaur.local:8000/api/user/
🌸 [CodyFire]: Error: PUT user/ methodNotAllowed

status: methodNotAllowed
method: put
endpoint: user/
headers: ["Authorization": "Bearer xyz"]
httpBody:{"detail":"Method \"POST\" not allowed."}
json: ["detail": Method "POST" not allowed.]

So the logs seem to indicate that it thinks it's sending via PUT, but the actual http method is actually a POST. Confirmed via Charles proxy.

Never mind, clean build solves the problem :)


bitwiser73/7zip fix static and export

Shared library fix:
Add public export to allows using the shared library with LoadLibrary/GetProcAddress...

Static library fix:
Add 'register' functions to allow codecs/crypto function registration. Original 7zip instantiate many singletons on dll loading which register available algorithms. I have made patch to create some wrappers to allow "manual" registration when using static library (ex: NCompress::NLzma2::RegisterCodecLZMA2();).
See 7zip.h for more details.

Thanks for the PR!
This looks like a substantial feature improvement to 7zip; as per our maintainer guidelines, we can't accept features in patches[1]. This looks really great though, and we'd love it if you could submit it upstream and we can get it in the next release :)!
[1] https://github.com/microsoft/vcpkg/blob/master/docs/maintainers/maintainer-guide.md#do-not-implement-features-in-patches

/azp run

/azp run


Sync Master with Published

Proposed changes

Unreleased project version (optional)

Related issues (optional)

Deploy preview for docsdocker ready!
Built with commit<PHONE_NUMBER>492eb9049d5091a8c77629d1e85d3c
https://deploy-preview-9724--docsdocker.netlify.com


ModuleNotFoundError: No module named 'cm_rgb'

I get this error when trying to add the udev rule. Manjaro linux.
$ sudo cm-rgb-cli add-udev-rule Traceback (most recent call last):   File "/home/s/.local/bin/cm-rgb-cli", line 3, in <module>     from cm_rgb.ctrl import LedChannel, LedMode, CMRGBController ModuleNotFoundError: No module named 'cm_rgb'

ive copied the files needed into the same directory as the script and its worked in case anyone else has the unusual issue...


kontrol: etcd: Debug logging and TTL fix

etcd update TTL was 90 nanoseconds instead of seconds.
Signed-off-by: John Andersen<EMAIL_ADDRESS>

@pdxjohnny Could you please rebase this PR onto the master branch? This races should be gone.

Thanks @pdxjohnny!


Possible typo?

This character's data appears to have a typo in the name of the character:
{"id":408,"name":"Quick Mistery Presenter","status":"Alive","species":"Human","type":"","gender":"Male","origin":{"name":"Interdimensional Cable","url":"https://rickandmortyapi.com/api/location/6"},"location":{"name":"Interdimensional Cable","url":"https://rickandmortyapi.com/api/location/6"},"image":"https://rickandmortyapi.com/api/character/avatar/408.jpeg","episode":["https://rickandmortyapi.com/api/episode/8"],"url":"https://rickandmortyapi.com/api/character/408","created":"2018-04-15T20:51:47.778Z"}
Possibly it was meant to be "Quick Mystery Presenter"?

Hey @AlexSheva-mason
good catch!
fixed: https://rickandmortyapi.com/api/character/408
thank you!


MySQL DB error on the region console

Saw this error on the region 1 console, running Halcyon 0.9.31 release on the IMA Test grid.
11:29:54 - [SCENE]: Bulk storing 39 objects
11:29:55 - [SCENE]:  Persistance failed with exception MySql.Data.MySqlClient.My SqlException (0x80004005): Out of range value for column 'nextPermissions' at row 14
Log File reports:
2017-02-28 11:59:49,614 [STP SmartThreadPool Thread #0] DEBUG OpenSim.Region.Framework.Scenes.SceneObjectGroup - [SCENE]: Bulk storing 39 objects
2017-02-28 11:59:50,315 [STP SmartThreadPool Thread #0] ERROR OpenSim.Region.Framework.Scenes.Scene - [SCENE]:  Persistance failed with exception MySql.Data.MySqlClient.MySqlException (0x80004005): Out of range value for column 'nextPermissions' at row 14
at MySql.Data.MySqlClient.MySqlStream.ReadPacket()
at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId)
at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)
at MySql.Data.MySqlClient.MySqlDataReader.NextResult()
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()
at OpenSim.Data.MySQL.MySQLDataStore.BulkStoreObjectInventories(IEnumerable1 items, IEnumerable1 deletedItems) in X:\halcyon-<IP_ADDRESS>42\OpenSim\Data\MySQL\MySQLRegionData.cs:line 2531
at OpenSim.Region.Framework.Scenes.SceneObjectGroup.ProcessBulkBackup(IList`1 groups, IRegionDataStore datastore, Boolean forcedBackup) in X:\halcyon-<IP_ADDRESS>42\OpenSim\Region\Framework\Scenes\SceneObjectGroup.cs:line 1960
at OpenSim.Region.Framework.Scenes.Scene.PerformBackup(Boolean forceBackup) in X:\halcyon-<IP_ADDRESS>42\OpenSim\Region\Framework\Scenes\Scene.cs:line 1563, objects will not be untainted
I have verified that the 'nextPermissions' field does exist in the primitems table and is INT(11) NOT NULL,
MYSQL DB Server Version: 5.7

The query that is failing is the bulk storage of prims (same thing that runs when you type "backup" on the region console).
It's a complex section of code, but an example of a query this uses, with (in this case 2 rows) is:
INSERT INTO primitems (invType, assetType, name, description, creationDate, nextPermissions, currentPermissions, basePermissions, everyonePermissions, groupPermissions, flags, itemID, primID, assetID, parentFolderID, creatorID, ownerID, groupID, lastOwnerID, canDebitOwner) values (?invType0, ?assetType0, ?name0, ?description0, ?creationDate0, ?nextPermissions0, ?currentPermissions0, ?basePermissions0, ?everyonePermissions0, ?groupPermissions0, ?flags0, ?itemID0, ?primID0, ?assetID0, ?parentFolderID0, ?creatorID0, ?ownerID0, ?groupID0, ?lastOwnerID0, ?canDebitOwner0),(?invType1, ?assetType1, ?name1, ?description1, ?creationDate1, ?nextPermissions1, ?currentPermissions1, ?basePermissions1, ?everyonePermissions1, ?groupPermissions1, ?flags1, ?itemID1, ?primID1, ?assetID1, ?parentFolderID1, ?creatorID1, ?ownerID1, ?groupID1, ?lastOwnerID1, ?canDebitOwner1) ON DUPLICATE KEY UPDATE invType=VALUES(invType), assetType=VALUES(assetType), name=VALUES(name), description=VALUES(description), creationDate=VALUES(creationDate), nextPermissions=VALUES(nextPermissions), currentPermissions=VALUES(currentPermissions), basePermissions=VALUES(basePermissions), everyonePermissions=VALUES(everyonePermissions), groupPermissions=VALUES(groupPermissions), flags=VALUES(flags), primID=VALUES(primID), assetID=VALUES(assetID), parentFolderID=VALUES(parentFolderID), creatorID=VALUES(creatorID), ownerID=VALUES(ownerID), groupID=VALUES(groupID), lastOwnerID=VALUES(lastOwnerID), canDebitOwner=VALUES(canDebitOwner)

It supports up to 128 rows and in the real-world test I ran, the query was 15699 characters long.
There are two paths through that code I'm taking a look at whether that matters. It's having an exception on the high-runner case, not the less common one.

The exception itself is in BulkStoreObjectInventories at MySQLRegionData.cs line 2531. That's what my comment above is referring to.

Is this resolved?

I think this has been resolved in one of the releases after my original posting of the error. I no longer see the error showing up in the region log.

Okay that's great, that persistence runs every 5 minutes so if it was still around,  you'd see it.


Please add support for ABC-BMS (for SOK LiFePO4 Bluetooth batteries)

Please add support for ABC-BMS (the BMS for SOK LiFePO4 Bluetooth batteries).
Thanks in advance!

I have reverse engineered the ABC-BMS (SOK-BMS) protocol from tearing down their Android app and capturing bluetooth between mobile phone and battery. I'll share working PoC with @Louisvdw.

I have reverse engineered the ABC-BMS (SOK-BMS) protocol from tearing down their Android app and capturing bluetooth between mobile phone and battery. I'll share working PoC with @Louisvdw.

Awesome, thanks much!  Looking forward to trying it out.

Hello, how's it coming along for this?

I would love to see this implemented! Currently I have a home assistant instance running in my RV, with ESPHome pulling in BLE sensor data. If the spec for the ABC-BMS were known it would enable many other projects to take advantage of the BMS values.

@zuccaro I'm about to start reverse engineering the SOK bluetooth services, but if you've already done this would you mind sharing with me as well?

I don't have a full understanding of their protocol but it should help you get started!

#!/usr/bin/python3

# communicates with SOK BMS via BLE commands

import BLE_GATT
import logging
import argparse
import struct
import sys
import threading
import time
import statistics

mac_address = '00:00:01:AA:EE:DD'

svc_id    = '0000ffe0-0000-1000-8000-00805f9b34fb'
notify_id = '0000ffe1-0000-1000-8000-00805f9b34fb'
tx_id     = '0000ffe2-0000-1000-8000-00805f9b34fb'

cmd_name       = [ 0xee, 0xc0, 0x00, 0x00, 0x00 ]
cmd_info       = [ 0xee, 0xc1, 0x00, 0x00, 0x00 ]
cmd_detail     = [ 0xee, 0xc2, 0x00, 0x00, 0x00 ]
cmd_setting    = [ 0xee, 0xc3, 0x00, 0x00, 0x00 ]
cmd_protection = [ 0xee, 0xc4, 0x00, 0x00, 0x00 ]
cmd_break      = [ 0xdd, 0xc0, 0x00, 0x00, 0x00 ]

def get_str(ubit, uuid):
    """ reads utf8 string from specified bluetooth uuid """
    return ''.join(bytes(ubit.char_read(uuid)).decode('UTF-8'))

def unpack(pattern,data):
    """ slightly simpler unpack call """
    return struct.unpack(pattern, data)[0]

def getBeUint4(data, offset):
    """ gets big-endian unsigned integer """
    return unpack('>I',bytes(data[offset:offset+4]))

def getBeUint3(data, offset):
    """ reads 3b big-endian unsigned int  """
    return unpack('>I',bytes( [0]+data[offset:offset+3]))

def getLeInt3(data, offset):
    """ reads 3b little-endian signed int """
    return unpack('<i',bytes( [0] + data[offset:offset+3]))

def getLeShort(data, offset):
    """ reads little-endian signed short """
    return unpack('<h',bytes(data[offset:offset+2]))

def getLeUShort(data, offset):
    """ reads little-endian unsigned short """
    return unpack('<H',bytes(data[offset:offset+2]))

def send(device, data):
    """ sends data (appends crc - don't send in your own) """
    data2 = data + [minicrc(data)]
    logging.debug(f'Sending [{bytes(data2).hex().upper()}]')
    device.char_write(tx_id, data2)

def minicrc(data):
    """ computes crc8 of specified data"""
    i = 0;
    for b in data:
        i ^= b & 255;
        for i2 in range(0, 8):
            i =  (i >> 1) ^ 140 if (i & 1) != 0 else i >> 1;
    return i

def send_commands(device, cmds):
    for c in cmds:
        time.sleep(3)
        send(device, c)

class SokBms(object):

    def __init__(self):
        self.soc = 0
        self.volts = 0
        self.name = None   # name given by manufacturer
        self.cycles = None # number of times battery has been power cycled
        self.year = None   # year battery was manufactured
        self.rated = None  # rated
        self.cells = None # array for individual lifepo4 cell voltages
        self.temp = None
        self.central = None

    def _notify_handler(self, value):
        """ callback when ble device has data """

        cmd = unpack('>H',bytes(value[0:2]))
        logging.debug(f'Received {hex(cmd)[2:]} msg: {bytes(value).hex()} ({len(value)}b)')

        if value[-1] != minicrc(value[0:-1]):
            logging.fatal('Received invalid checksum, aborting')
            self.central.cleanup()
            return

        if cmd == 0xccf0: # status
            #this is not accurate, find out why
            # self.volts = (getLeInt3(value, 2) * 4) / 1000**2
            self.ma = getLeInt3(value, 5) / 1000**2
            self.cycles = (struct.unpack('<H',bytes(value[14:16]))[0])
            self.soc = struct.unpack('<H',bytes(value[16:18]))[0]
            ema = getLeInt3(value, 8) / 1000
            curr = getLeInt3(value, 11) / 1000
            logging.debug(f'v={self.volts}({bytes(value[2:5]).hex()}) ma={self.ma}({bytes(value[5:8]).hex()}) edingma={ema}({bytes(value[8:11]).hex()}) curma={curr}({bytes(value[11:14]).hex()})')

        elif cmd == 0xCCF1: # name
            self.name = bytes(value[2:10]).decode('utf-8').rstrip()

        elif cmd == 0xCCF2: # temps
            self.temp = getLeShort(value, 5)
            self.temp_f  = self.c2f(self.temp)

        elif cmd == 0xCCF3: # year, mv, hot
            self.year = 2000 + value[2]
            self.rated = getBeUint3(value, 5) / 128
            hot = getLeUShort(value,8)
            if hot:
                logging.warn('device heater is on!?')

        elif cmd == 0xCCF4: # details of each cell
            self.cells = [0,0,0,0]
            for x in range(0,4):
                cell = value[2+(x*4)]
                self.cells[cell - 1] = getLeUShort(value, 3+(x*4))
            self.volts = (statistics.mean(self.cells)*4)/1000

        else:
            logging.warn('Do not understand this response, please investigate')
            pass

        if self.callback:
            self.callback(self)

    def receive_data(self):
        logging.debug('waiting for notifications')

        logging.debug('no longer waiting for notifications')

    def refresh(self, callback=None):
        if callback:
            self.callback=callback
        logging.debug(f'Sending commands (callback={callback})')
        t = threading.Thread(target = send_commands, args = (self.central, [cmd_info, cmd_name, cmd_detail],))
        t.daemon = True
        t.start()

    def connect(self, mac_address):
        self.central = BLE_GATT.Central(mac_address)
        self.central.connect()
        self.manufacturer =  get_str(self.central,'00002a29-0000-1000-8000-00805f9b34fb')
        self.model        =  get_str(self.central,'00002a24-0000-1000-8000-00805f9b34fb')
        self.firmware_ver =  get_str(self.central,'00002a26-0000-1000-8000-00805f9b34fb')
        self.serial_num   =  get_str(self.central,'00002a25-0000-1000-8000-00805f9b34fb')
        logging.info (f'Connected to {self.manufacturer} {self.model} [{self.serial_num}]')

    def listen_async(self):
        t = threading.Thread(target = self.listen)
        t.daemon = True
        t.start()
        return t

    def listen(self):
        self.central.on_value_change(notify_id, self._notify_handler)
        logging.info (f'Registered for notifications on {notify_id}')
        self.central.wait_for_notifications()

    def is_complete(self):
        return self.name and self.cells and (self.temp!=None) and self.year

    def c2f(self,temp):
        """ converts celsius to fahrenheit """
        return (temp*(9/5))+32

    def __str__(self):
        ret = ''
        if self.name:
            ret += self.name
        else:
            ret += "BMS"

        ret += ":"

        ret += f' SOC:{self.soc}%'

        if self.rated:
            ret += f" Rated:{self.rated:.2f}AH"

        if self.year:
            ret += f' Manufactured:{self.year}'

        if self.volts:
            ret += f' {self.volts:.2f}V'

        if self.cycles:
            ret += f' Cycles:{self.cycles}'

        if self.temp:
            ret += f' Temp:{self.c2f(self.temp):.1f}F'

        if self.cells:
            ret += f' Cells:{self.cells}'

        return ret

if __name__=='__main__':

    parser = argparse.ArgumentParser(
                    prog = 'SOK BMS Reader',
                    description =  'Communicates with weird BMS on SOK battery',
                    epilog = 'Reverse engineered from ABC BMS Android app (com.sjty.sbs_bms)')

    parser.add_argument('-a', '--address', type=str, default=mac_address)
    parser.add_argument('-d', '--debug', action='store_true', default=False)
    args = parser.parse_args()

    stream_handler = logging.StreamHandler(stream=sys.stderr)
    lx = logging.DEBUG if args.debug else logging.INFO
    stream_handler.setLevel(lx)
    logging.basicConfig(level=lx,format='%(asctime)s %(levelname)s %(message)s', handlers=[stream_handler])

    device = SokBms()
    device.connect(args.address)
    logging.info(device)

    logging.debug('Data collection complete, exiting')
    device.central.cleanup()

@zuccaro This is amazing! Do you mind if I build on this and contribute this BMS to https://github.com/fl4p/batmon-ha? I'd be glad to credit you in the pull request.


[MDEP001] DeprecationWarning: "MongoMemoryReplSet.getConnectionString" is deprecated, use ".getUri"

We should use .getUri instead of .getConnectionString where https://github.com/nodkz/mongodb-memory-server is used.

Automatically generated comment to notify maintainers
/cc @machi1990, @wtrocki

Hi @Muditxofficial yes that looks to be the case. You will need to research the relevant documentation at https://github.com/nodkz/mongodb-memory-server to find out what it does.


parse_datetime reports error on missing lastFetched field

Describe the issue
I get this error:

unable to parse 'None' using ['%Y-%m-%dT%H:%M:%S.%f%z', '%Y-%m-%dT%H:%M:%S%z', '%Y-%m-%dT%H:%M:%S.%fZ', '%Y-%m-%dT%H:%M:%SZ']

For the car there is no "lastFetched" in attributes.
I think this code in bimmer_connected/utils.py:
def parse_datetime(date_str: str) -> Optional[datetime.datetime]:     """Convert a time string into datetime."""     if not date_str:         return None     date_formats = ["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%dT%H:%M:%S%z", "%Y-%m-%dT%H:%M:%S.%fZ", "%Y-%m-%dT%H:%M:%SZ"]
should rather be:
def parse_datetime(date_str: str) -> Optional[datetime.datetime]:     """Convert a time string into datetime."""     if not date_str or date_str = "None":         return None     date_formats = ["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%dT%H:%M:%S%z", "%Y-%m-%dT%H:%M:%S.%fZ", "%Y-%m-%dT%H:%M:%SZ"]
The calling vehicle/vehicle.py converts None to "None"...
Expected behavior
avoid the error message
Which Home Assistant version are you using?
bimmerconnected cli
What was the last working version of Home Assistant Core?
n/a
What is your region?
Rest of world
MyBMW website

[X] I can still successfully login to the BMW MyBMW website and the car status is available there.
[X] I have MyBMW enabled for my vehicle.

Number of cars

[ ] I have 2 or more cars linked to the MyBMW account.
[ ] I have a Mini vehicle linked to my account.

Output of bimmer_connected fingerprint
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response

Thanks, hope the PR solves it.


[Feature] Extract additional pages on initial XSS fire

Hello! I would like to suggest to add "Extracted URLs" page under "Reports" section or as a tab in Reports page.
Feature similar to what XSSHunter have now and called "Collected pages". XSS will just extract HTML of additional pages defined by user somewhere in settings and can be like "/home/foo/bar/secret.html" or "/robots.txt".
Great framework with nice UI, still need to tweak font color in some places like reports page :)
Thanks.

Hi @Haones,
I will add this to the todo list for v4.0

Hey @ssl,
Thanks! Also I was about to sponsor via link you provided, but PayPal takes huge fee of 20%. As far as I know GitHub may take care of all fees if you provide a way to directly sponsor yourself via GitHub platform.
Keep up the good work, thank you!

Hi @Haones,
Thanks for considering sponsoring! Thanks for the tip about the Github Sponsors. I've setup my Sponsors and edited the Sponsor button on ezXSS. It still needs some work but it provides the option now.
Thanks!

Added this in https://github.com/ssl/ezXSS/commit/d4b02408b2f60fd2140357fbfc224c687a5c5f34

Things that I might still add to this:

Screenshot on collected page
Sync 'Collecting' to collected pages. Currently it collects everything except screenshot
Ability to not send alert if it is a collected pages
Ability to not send alert/report if collected page is a 404 response


VS Code (Insiders): Error: Incorrect locale information provided

-1598480140096.log
The Console in the Developer Tools window shows these two error messages (in the attached log) appearing every few minutes.

@Robo210: My recommendation would be to move to a newer insiders build. One of the files mentioned in the log stringUtilities.js has long since been removed. Thus that should fix the issue.

My current extension version is
Name: Sarif Viewer
Id: ms-sarifvscode.sarif-viewer
Description: The Sarif Viewer extension visualizes the results in a Sarif file
Version: 3.2020.430009-insiders
Publisher: Microsoft DevLabs
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=MS-SarifVSCode.sarif-viewer

Recommend installing this one: https://github.com/microsoft/sarif-vscode-extension/releases/tag/v3.2020.91001-insiders

This build fixed this issue, and lots of other issues! Thanks!


docs: typo on how to open pull request document

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[ ] I have tested these changes either locally on my machine, or GitPod.

Closes #48085

Here's a preview of the changes:

Please take a moment to update your title following the guidelines https://contribute.freecodecamp.org/#/how-to-open-a-pull-request?id=prepare-a-good-pr-title


Escape char for selection with like is always \

The like statement allows the user to select the escape char: https://docs.exasol.com/db/latest/sql_references/predicates/not_like.htm
However, the virtual schema currently always uses \ as escape char independent of the one selected by the user.

Closed by #96


Support for NSIS language

Hello, would it be possible to add support for NSIS (Nullsoft Scriptable Install System) syntax? Thank you very much.
Additional context
Some examples for syntax testing:
https://nsis.sourceforge.io/Category:Code_Examples
Some examples for "Headers" files:
https://nsis.sourceforge.io/Category:Headers
File extensions of this language:
*.nsi (scripts) / *.nsh (Headers files)

Hello, would it be possible to add support for NSIS (Nullsoft Scriptable Install System) syntax? Thank you very much.

@massivemadness I understand that you are "Tired", but since I have not received a reply I have no idea if my request has been taken into consideration.

@SimoLRepo Hi, I took a break from this project and I have no plans to coming back soon. But this language doesn't look "hard" to implement, I may start working on it when it's the right time for me

@SimoLRepo Hi, I took a break from this project and I have no plans to coming back soon. But this language doesn't look "hard" to implement, I may start working on it when it's the right time for me

@massivemadness Hi, first of all, thank you for your reply. Take all the time you need, I don't use editors much in mobile at this time. I look forward to the implementation of such language. Thank you.


Black ViroARScene camera background after sceneNavigator.pop()

Environment

Development OS: Linux
Device OS & Version: Android 9?
Version: ViroReact 2.14.0 and React Native 0.59.3
Device(s): Xiaomi Pocophone F1

Description
I'm trying to load a ViroARScene from another ViroARScene using this.props.sceneNavigator.push({scene:ThreeSixtyScene});
Everything works good till I go back to the main scene using this.props.sceneNavigator.pop() and the AR camera background doesn't work anymore, showing a black screen.
The items previously placed in the scene do work correctly.
The second scene I'm loading only contains a Viro360Image and a button to go back:
<ViroARScene style={styles.container}>
            <Viro360Image source={backgroundImage}/>
            <ViroNode>
                <ViroImage
                    scale={[1, 1, 1]}
                    position={[0, -3.5, 0]}
                    rotation={[-90, 0, 0]}
                    source={backImage}
                    onClick={this._onBackClick}/>
            </ViroNode>
</ViroARScene>

I have the same problem. Is there a solution for this problem? it is working properly on iOS ..

Hi @pablo-tx and @Woltman, I am also facing exact same issue. Did you manage to resolve this issue? I would really appreciate your help.

@vipulz006 same here

.


New puzzle: Find a number with a number of 4s and 7s that has only 4s and 7s

def sat(d: int):
    """
    Find a number bigger than n whose decimal representation has k 4's and 7's where k's decimal representation
    consists only of 4's and 7's

    Inspired by [Codeforces Problem 110 A](https://codeforces.com/problemset/problem/110/A)
    """
    return d > 123456789 and set(str(str(d).count("4") + str(d).count("7"))) <= {"4", "7"}

Solvers, post your solutions in the comments using the following formatting:
<details><summary>Reveal solution</summary>

```python
def sol():
    return "world"  # replace with your solution
```
</details>

Reveal solution
def sol():
    return int("7" * int("4") + "1" * (len(str(123456789)) - int("4")))


Unexpected Allocations

unexpected Allocations / slow execution when performing Simulation

6f83f2c dindt fixed the bug to satisfactory. Bug is in StaticArrays.jl v1.9. Downgrade to v.1.8.2 solves it for now

resolved with 3db8400


Banking

When I'm using rdwrap and I try to log into banking, (which opens as a secure window) the user and password fields start populating by other users also logged on the same server (multi-users). This continues to happen right through the whole banking fields. It doesn't happen ant other time when I'm browsing other websites or typing in word, note, or excel. It only happens with banking, I also have Kaspersky as my virus protection, not sure if it's relevant. Can anyone help.

it doesn't make sense to me, unless you share the same profile with other users during rdp session.
could you specific which bank and browser are you using?


Issue #1 fix build

Problem:
This new package did not build.
Solution:
Setup vagrant and travis build mechanisms similar to libuavcan.
Testing:
Built and flashed. Verified olimex board worked.

@thirtytwobits Would you be interested in contributing an example for a PWM extender using that board (or any other)? Essentially a UAVCAN to PWM converter. I believe this would be instrumental in getting more adoption of the protocol. Given the configurability of PX4 it might be also worth looking into building a slave device using the existing PX4 driver infrastructure. The flight control apps could be completely disabled.

@LorenzMeier is this what you're looking for? https://kb.zubax.com/x/PQB8

Yes, but I would like to make it easier to access - so a dedicated build for it and preferably a dedicated low-cost board with the right connectors.

@pavel-kirienko how do I setup travis for this repo?

Log into Travis, select the UAVCAN account (you're an admin, so you should have access there), find the repo and enable it (which I just did). Then add .travis.yml (you did that already). I'm going to force a rebuild now.

Okay. Looks green. Let me know if I can merge this. Also, is this pattern okay to apply to the remaining driver repos? My Makefile hackery isn't perfect since there's no good correlation between the include.mk rule from libuavcan and the state of the git repo that the rule clones. CMake does a better job of this but it's not perfect either. Perhaps it's time to talk about conan.io? Not sure what dronecode is doing for dependency management?

Also, is this pattern okay to apply to the remaining driver repos?

Yes, I think so. I think we could also check out not just the master of libuavcan, but the latest release, for extra robustness. Check this out [pun not intended]: https://stackoverflow.com/questions/17414104/git-checkout-latest-tag

Perhaps it's time to talk about conan.io?

Finally I meet this thing in the wild. I first heard about it on some C++ conference years ago and I thought the day will never come.


Restore center-reactions-popup feature

Fix https://github.com/refined-github/refined-github/issues/5881
Test URLs

This page
Split view with review comments

Screenshots
Regular comment

Review comment in split diff view

Could you also add a width on the popup so they wrap like they used to? I feel that the single line is the most annoying part.
I fully expect them to add an emoji picker this year though, it feels like that's the reason why they changed the layout now. But… we can hotfix it if/when that happens.

It's being overridden by .d-flex

Fixed and tested on Chromium:


How to use the model on other dataset?

Hello,
I really enjoyed your paper and the code can run smoothly on the given tiny dataset. But when I tried to get it run on the downloaded Arxiv or PubMed data, the file format seems not fit. Also, I want to use this model on other dataset as our paper's baseline.
I've tried the codes in scripts folder, which seems to be used for data preprocessing. But it takes xml file as input.
If you can provide more detailed instructions on the data preprocessing, I'd greatly appreciate it.

I'll add the preprocessing steps to convert the data in the bin format. In the meanwhile, you can follow https://github.com/abisee/cnn-dailymail for preprocessing step. We only have an additional field called sections.

Hi,
I has already followed cnn-dailymail for preprocessing step,
pubmed_prep.py for pubmed's nxml
pubmed_write_bin.py for chunk file & .bin file
but, I still curious about read_tf_records_pubmed.py
what time we can use this ?

Hello,
I want to use this model on my dataset， but the source text has no sections， can you give me some advice how to use your model?

Added a script that helps with preprocessing and converting the text files to Tensorflow bin files. https://github.com/acohan/long-summarization/blob/master/scripts/json_to_bin.py


Remove the "Widget options" Attribute-> Element

Technical
WATT/VSC
Description
Remove the "Widget options" Attribute-> Element if it don't needed
Steps to reproduce

Create a new project in Design Editor
Open the Attributes tab and select the Element

Expected behaviour
Unnecessary items should be deleted
Actual behaviour
There is the "Widget options" but it don't use

@TomaszLukawskiSam @korneliakobiela
Attribute -> Element -> Widget options are using?
If there is not using, I'll remove it.

@TomaszLukawskiSam @korneliakobiela
Attribute -> Element -> Widget options are using?
If there is not using, I'll remove it.

We can remove this property.

patch is merged


Warnings logs on browser console due to using React development version.

There are React deprecation warning logs on the browser console in WSO2 Identity Server v5.10.0 user-portal web app and it appears to have been built using a development version of React.
The user-portal web app has to be transitioned to a production version of React in WSO2 Identity Server v5.10.0.

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Loop reset transition Nomai mask wobbly polygons

Looks funky, but can be fixed by disabling positional tracking during the transition.

Couldn't really fix it but made the mask not so stuck to the head


CSS Not Loading

From lurous.productions on November 03, 2010 15:17:05
What steps will reproduce the problem? 1. Install
2. Setup a ServerAlias on Virutal Hosts
3. Try both URLs, one will not load the CSS file. What is the expected output? What do you see instead? Expected: It to load the CSS file.
Instead: The CSS file seems to be empty. What version of the product are you using? On what operating system? I'm using the latest revision as of 2:15 CST 3 Nov. 2010 on a Debian Linux 5.0. Please provide any additional information below. I am running Virtual Hosts with ServerAliases for "www." That's where this is failing. I did add domains as:
ModPagespeedDomain *.example.net
Original issue: http://code.google.com/p/modpagespeed/issues/detail?id=3

From lurous.productions on November 03, 2010 12:20:29
To add to this: The CSS file it creates seems to be interpreted as a 404 error.

From lurous.productions on November 03, 2010 12:24:01
The apache log says:
[Wed Nov 03 13:54:56 2010] [notice] [1103/135456:INFO:net/instaweb/apache/serf_url_async_fetcher.cc(632)] Initiating async fetch for http://www.example.net/templates/dark_theme/_css/style.css [Wed Nov 03 13:54:56 2010] [warn] [1103/135456:WARNING:net/instaweb/util/google_message_handler.cc(32)] Failed to create or read input resource /templates/dark_theme/_css/style.css
[

From lurous.productions on November 03, 2010 12:43:48
It also seems to work always on the first way you access the files.
For instance:
I can access the same files 3 ways.

www.example.com/templates/dark_theme/_css/style.css
example.com/templates/dark_theme/_css/style.css
<IP_ADDRESS>/templates/dark_theme/_css/style.css

The first one I access works as cached. The second and third don't always work as cached but sometimes they do.

From<EMAIL_ADDRESS>on November 08, 2010 04:51:36
The first time mod_pagespeed accesses a resource, it initiates an asynchronous fetch of that resource and does not rewrite it, so the behavior you're seeing (no trouble until the second access) is consistent with how the module works.
Nonetheless, you shouldn't be getting 404s.  I'd be interested to hear if there are unusual log entries pertaining to this css file, or log entries that might indicate that one of your Apache processes has crashed.
Status: Accepted
Owner<EMAIL_ADDRESS>

From lurous.productions on November 08, 2010 06:24:46
It seems to be doing it on any files, JS, CSS and even sometimes images.

From<EMAIL_ADDRESS>on November 08, 2010 07:03:15
Issue 16 has been merged into this issue.

From<EMAIL_ADDRESS>on November 08, 2010 07:04:06
Labels: -Priority-Medium Priority-Critical

From<EMAIL_ADDRESS>on November 08, 2010 11:00:44
Think I am getting a similar problem. I use RapidWeaver to make my web site and I upload it to my domain (virtual domain?) at dreamhost.com. If I enable Page Speed, the page design is broken, looks very basic and unordered, as if it seems to default to a default style and not load my custom 'theme' CSS files.

From<EMAIL_ADDRESS>on November 09, 2010 08:38:37
We're at a bit of a loss trying to reproduce this problem, and would love to get more information about what's going on.  A few things to try:

Look at the page source for rewritten URLs associated with broken resources (such as the broken CSS, js, or images mentioned above).  Can you fetch these resources in isolation (using wget, curl, or just typing them into the address bar of your browser)?

If you can, do the resulting files look reasonable?  If you run a tool such as FireBug on your page, does it indicate any new errors with the rewritten content?
If you can't, what do the logs look like when you attempt to fetch the rewritten data?

Try enabling filters one at a time.  What filter causes the problems in your page?  For css, I'd suspect cache_extend, css_filter, css_combine, or outline_css.

Until we can reproduce this, it's going to be tricky to figure out how to fix the bug.

From<EMAIL_ADDRESS>on November 09, 2010 12:33:26
You can find in www.zip a very simple html page with two images to reproduce this case.
I use the same image in different path.
In file system, only one file: ./cache/http,3A/,/xx.xx.xx.xx/dir1/ce.4b9606a40bd81e8a047d2f74fa167e35.logo,2Cp.png,
The second image in log: [Tue Nov 09 21:22:35 2010] [info] Fetch succeeded for http://xx.xx.xx.xx/dir2/ce.4b9606a40bd81e8a047d2f74fa167e35.logo,p.png , status=404
Attachment: www.zip Image1.png

From lurous.productions on November 09, 2010 13:30:18
It's quite bizarre, but it seems that, for instance:
the file is here: http://www.lurous.com/media/system/js/ce.f6490edc31bf9c25ba507f41ce614def.mootools,l.js and it works.
However, if I use the ServerAlias for it (which, as it is a serveralias, it should serve the same directory) it does not work. It returns a 404 error: http://lurous.com/media/system/js/ce.f6490edc31bf9c25ba507f41ce614def.mootools,l.js

From lurous.productions on November 09, 2010 13:42:19
However, on the CSS, in /var/mod_pagespeed/cache folder, the CSS on the page is
ce.ffe41e99f797f8830111fe10f4213910.style,s.css
The actual file in the cache folder is:
ce.a5440a7cb2e785e0ca281188c3065bcd.style,2Cs.css

From<EMAIL_ADDRESS>on November 09, 2010 13:42:20
@tanguy.coeury: Thanks for the nicely-distilled test case.  I've been able to reproduce this on my system by fiddling with cache extension:
http://.../?ModPagespeed=on&ModPagespeedFilters=rewrite_images,extend_cache
http://.../?ModPagespeed=on&ModPagespeedFilters=extend_cache
both break, but the following works:
http://.../?ModPagespeed=on&ModPagespeedFilters=rewrite_images
It looks like there's a bug in our cache extension code that shows up when identical content resides at different paths (or perhaps different urls).  We'll look into this and find a fix.

From lurous.productions on November 09, 2010 13:47:30
Yep, as soon as I added
ModPagespeedDisableFilters extend_cache
It stopped. (Because it wasn't caching things anymore.)

From<EMAIL_ADDRESS>on November 11, 2010 16:05:14
The test case given by @tangey.couery above is now fixed in head.  Can folks please take a look at the latest svn release and see if it fixes the problem?  If not we may have multiple issues here.
Status: Fixed

From<EMAIL_ADDRESS>on November 11, 2010 16:22:54
Please remember if you build from source and want this fix now, you must build from trunk, not from the branch.

From<EMAIL_ADDRESS>on November 12, 2010 10:08:38
It fixes the problem in my case also in my real web site.
Thank's a lot.


What is WeJustDevelop

add brief explaination on the README

I can help with this 🤘

Hmm, actually - maybe this is best left to a novice 😄

I agree, thanks. I'll remove the tag and close this issue.


Why use so many partial classes?

Many C# source files share a same class, and I think they don't have strong relationship to stay in one class. Hard to read and maintain, a private variable can be accessed and changed in another file.
For example:

FanoutSearchModule.cs
FanoutSearchModule.Core.cs
FanoutSearchModule.Web.cs
FanoutSearchModule.Metadata.cs

From MSDN:

There are several situations when splitting a class definition is desirable:

When working on large projects, spreading a class over separate files enables multiple programmers to work on it at the same time.
When working with automatically generated source, code can be added to the class without having to recreate the source file. Visual Studio uses this approach when it creates Windows Forms, Web service wrapper code, and so on. You can create code that uses these classes without having to modify the file created by Visual Studio.

The files are separated for different purposes. One for core protocol processing, one for initialization, one for http, etc.


Return well define errors when run query

Coverage decreased (-0.5%) to 97.917% when pulling e587df78bdebecb76a19cbed15061d7a8f755c24 on nvhbk16k53:master into aae8f5e920f93cb0a1034cf2e771b343ebad3a21 on solher:master.

Thank you so much for your work.
The problem that I see with that is that we loose the original error message and replace it with a less informative one.
The ideal solution would probably be to declare custom error types and then test its occurring by a type switch instead of an equality. That way we could keep the original message.
Also, that would be great if you could make it more generic and add some errors for a database/collection already existing too.
I think that would be great to have:
// Throwned by strings.Contains(result.ErrorMessage, "unique constraint violated")
type ErrUnique struct {
    s string
}
func (e *errorString) Error() string {
    return e.s
}

// Throwned by strings.Contains(result.ErrorMessage, "not found")
// to also get the database drop errors
type ErrNotFound struct {
    s string
}
func (e *errorString) Error() string {
    return e.s
}

// Throwned by strings.Contains(result.ErrorMessage, "duplicate name")
// to get the database/collection creation errors
type ErrDuplicate struct {
    s string
}
func (e *errorString) Error() string {
    return e.s
}

In fact that would be great to add all the errors we could think of.

Ok, let me do it.


Limits on number and size of images

It appears as though there is a limit on the number and size of images that you can upload.  Does anyone have more information on exactly what that limit currently is?
Here is the error message that I am seeing when I simply tried to recreate Stan's exact listings.  ( https://github.com/OriginProtocol/origin-dapp/issues/402 )

There seems to be a more stringent limit on images we can upload.  I tried to upload the same images for each listing when @wanderingstan requested but I kept getting the error message that the images were too big or too many.

Also any thoughts on possibly showing image sizes in MB and KB for simplicity sake.

Relevant: https://github.com/OriginProtocol/origin-dapp/pull/217

Editing this title and opening comment... 🛠

...also relevant, going back to freakin January: https://github.com/OriginProtocol/origin-dapp/issues/44
What resizing tool are we using in #217? Something like this js?

@wanderingstan I was just mentioning this to @franckc earlier today: a scaled back version of https://github.com/mosch/react-avatar-editor#readme

@micahalcorn thanks for the update.
Note: feel free to edit any of my issues, titles or comments anytime.  I appreciate your succinct and focused writing style. (And one thing I want to keep improving is how to write very clear issues going forward)

Resolved by #586 with a fix to #489 on the way ✅


chore(main): release 1.1.6

:robot: I have created a release beep boop
1.1.6 (2023-05-21)
Full Changelog: https://github.com/icoretech/airbroke/compare/v1.1.5...v1.1.6

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/icoretech/airbroke/releases/tag/v1.1.6 :sunflower:


Moebot Requests

Post any requests you have for Moebot to fulfill here, these are more features rather than specific commands in #8

Sign-in setup in which new users to the server have to opt in to the server's channels (force them to read the rules!)
Gather folders, find appropriate means to distribute content regularly.
Detect activity in channels and "assist" in content distribution in channels with low traffic.
Creation of modlog

part 1 complete, moe rules command added


New package: RoughSurfaceImpedance v0.1.0

Registering package: RoughSurfaceImpedance
Repository: https://github.com/simonp0420/RoughSurfaceImpedance.jl
Created by: @simonp0420
Version: v0.1.0
Commit: 7cd739cc6ed1967aa9a17c4ae67e77f1e7365bd0
Reviewed by: @simonp0420
Reference: https://github.com/simonp0420/RoughSurfaceImpedance.jl/issues/1
Description: Fast, accurate calculation of rough metal surface impedance in Julia

Don't merge


Create Native Browser Module Bundles

Overview
This adds support in the build system for exporting a native browser-based module. Currently, only esm files exported are intended for users of Webpack/Rollup/Parcel. This module export will run directly in modern browsers that support <script type="module"> and provides a modern solution for importing directly in the browser.
Fixes #6734
Downloads

https://pixijs.download/dev-browser-modules/pixi.mjs
https://pixijs.download/dev-browser-modules/pixi-legacy.mjs

Example
Code: https://github.com/bigtimebuddy/pixi.js-browser-module-example
Preview: https://mattkarl.com/pixi.js-browser-module-example/

Codecov Report

Merging #6832 into dev will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               dev     #6832   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           15        15
  Lines          671       671
=========================================
  Hits           671       671

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 bfdbe36...7bf94af. Read the comment docs.

I'll be adding this to @pixi-build-tools/rollup-configurator as well.


A very simple solution to debug layout locally

This request is a very simple solution to let users debug layout locally before submitting the final JSON to the server.
How to enable this feature
1、In setting.plist, put use_main to YES.
2、Add your JSON file named main.json into the application.

To avoid a sudden modification of the demo application, I turned off the use_main. To test it out, you need to turn it back on.

How it worked
The only code-changes is just a replacement of the ROOT_URL with the local file URL of main.json in DEBUG mode. In a scheme without DEBUG, or while the main.json cannot be found, this feature will simply be ignored.

I'm not sure if this is a good idea, though… For local development, isn't it as easy as serving something from localhost? Or, if you don't want to change anything in the app itself, just change your hosts file to point to your local server… Or 😄 see if Jason helps you…

You are the boss @gtramontina 😄

Just filed a related issue here: https://github.com/Jasonette/JASONETTE-iOS/issues/48 Please take a look guys!


Autmn 2023

Create pull request from edited branch of to main branch of your fork
By the way, see example in repo readme, format is wrong


User and health endpoints

Replicate: https://github.com/praekelt/seed-identity-store/pull/27

@gsvr review post-land tomorrow please. Replicates ID store PR.

:+1:


fixup! Add changelog to the extra-source files.

I'm merging this fix w/o review, as it just fixes syntax error in cabal file.


chore: buildSendTx requires BIP44Params

Building a Send Transaction for any supported chain now requires BIP44Params

converting to draft so we don't accidentally merge until web is fully compatible

closing in favor of https://github.com/shapeshift/lib/pull/1021


Fix Rails/FilePath cop error with rescued Rails.root

echo "\"#{Rails.root rescue '.'}/config\"" | rubocop --stdin bug.rb --only Rails/FilePath -d

An error occurred while Rails/FilePath cop was inspecting bug.rb:1:0.
undefined method `method?' for an instance of RuboCop::AST::RescueNode
lib/rubocop/cop/rails/file_path.rb:156:in `autocorrect_slash_after_rails_root_in_dstr'
lib/rubocop/cop/rails/file_path.rb:81:in `block in check_for_slash_after_rails_root_in_dstr'

Before submitting the PR make sure the following are checked:

[X] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[ ] Wrote good commit messages.
[X] Commit message starts with [Fix #issue-number] (if the related issue exists).
[X] Feature branch is up-to-date with master (if not - rebase it).
[X] Squashed related commits together.
[X] Added tests.
[X] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[ ] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.
[X] If this is a new cop, consider making a corresponding update to the Rails Style Guide.

This looks good to me. Can you add a changelog entry and rebase with the latest master branch?


Bump golang from 1.18 to 1.19

Signed-off-by: Ashmita152<EMAIL_ADDRESS>
Which problem is this PR solving?

Bump golang from 1.18 to 1.19
Bump alpine from 3.14 to 3.16

Short description of the changes

Also added ReadHeaderTimeout to fix linter failures
G112: Potential Slowloris Attack because ReadHeaderTimeout is not configured in the http.Server (gosec)

The identation issue is now resolved. The PR is ready for review again. Thank you.


Enhanced BeginnersSeries sample (MauiApp2) to be more beginner's friendly

Motivation
I'm currently learning and playing around with .NET MAUI. I really like the samples in this repository.
In my eyes as an absolute beginner, the code could be a little bit enhanced to be more friendly for first-timers in the MAUI ecosystem.
Besides this, I renamed sample to avoid generic MauiApp2 and be more aligned with other samples in its naming.
Changes

Updated solution, project and namespace to 'BeginnersTask' to be aligned with other samples naming structure
Fixed missing indents
Added comment to MauiProgram.cs with helpful links to Microsoft Learn
Added comment to MainViewModel.cs with helpful code pointers to see related setups and receivers of routings

@microsoft-github-policy-service agree

@microsoft-github-policy-service rerun

@microsoft-github-policy-service rerun

@dotnet-policy-service agree

You are welcome @davidbritch - thanks for accepting such minor changes - it feels awesome!


Do not use the cached rp_forest

As @falexwolf noticed, caching rp_forest from previous neighbors calculations can cause problems.

Do we need to backport?

I think yes.


Versioning

I think with all that changes its time to introduce versioning.
Put in somewhere a version number and please add a changelog text document.
Thanks

@MrDChristop I agree, this is a good idea

@MrDChristop @kcoley I was thinking that myself. It’s a good idea.

Just merged versioning support


How to format without decimal?

Hallo All..
I want to ask how to format number without decimal?
example :
1,000.00 to be 1,000
thank you for your hands...

thanks!

Thanks ;)

Thanks!!!!

Thanks Bob

Note ; the way to define the number of decimals has changed since v4.0.0-beta.22.
Now, you need to be more explicit about it, by setting the decimalPlaces option (cf. the documentation).
Moreover, you can now fine grain how many decimal you want for each focused/unfocused state, as well as the precision to keep as the rawValue, using decimalPlacesRawValue, decimalPlacesShownOnBlur and decimalPlacesShownOnFocus.

고마워요 2.0 버젼 못찾아서 헤멤

thanks


[R] Hyperbolic trigonometry functions

Describe the enhancement requested
In economics and health services research we often use hyperbolic trig functions--particularly the hyperbolic arc sine function--to transform skewed data with 0s. While it is possible (and not too difficult) to code up asinh manually (ln(x+sqrt(x^2+1))), it would be great if it could be added to the library of built-in functions.
Component(s)
R

Tbh not sure how to do that! (Very new to GitHub etc)

I took a stab at this in #44630

Thanks for making that PR @khwilson, that's awesome!!  I'm afraid it won't magically add the R functions as well, but here's a guide on how to do that from an older version of the docs: https://arrow.apache.org/docs/dev/r/articles/developers/bindings.html

Ah disappointing! Not quite like the Python version then.

Thank you for the PR @khwilson. I added my review. It's very comprehensive and well done (with the right _checked variations and all). I created a separate issue so that we can focus on merging this PR as soon as possible and another one can be opened dedicated to adding the R bindings (pointing to this issue).

@khwilson's PR is now merged. R bindings still pending so this issue remains open.


Added annotations to target_rule_name

I need to add it as:
rule(:target_rule_name)  { (annotations.as(:annotations) >> (ruleset_id_alias >> ...

(i.e. add the '.as(:annotations)') to avoid Parslet creating an intermediate array between [:target_rule_name] and [:rule_name] in the output tree.  Hopefully that doesn't cause any problems beyond the slight aesthetic difference.

Note that it also fixes the test at parser_spec.rb 1319-ish:
   it 'should parse array rule with reject directive on target rule' do
 -    expect{ JCR.parse( 'my_rule [ @{reject} target_rule ]' ) }.to raise_error Parslet::ParseFailed
 +    JCR.parse( 'my_rule [ @{reject} target_rule ]' )
    end


[ENHANCEMENT] Allow adding Checksum when creating a new Image from URL

Is your enhancement related to a problem? Please describe.
When creating a new Image from URL, it would be great to specify the expected SHA512 checksum to do a validation after download. This feature is already available in the Longhorn UI. And since Harvester uses Longhorn's BackingImage for the images under the hood, the functionality is already given.

Describe the solution you'd like
Add a input field in the UI to specify the SHA512 checksum of the downloaded file. Under the hood, the BackingImage API checksum field is populated with the checksum entered in the UI.
apiVersion: longhorn.io/v1beta2
kind: BackingImage
metadata:
  name: foo
  namespace: longhorn-system
spec:
  checksum: xxxxxx

Describe alternatives you've considered
n/a
Additional context
n/a

The backend seems to supports this already.
apiVersion: harvesterhci.io/v1beta1
kind: VirtualMachineImage
metadata:
  name: image-systemrescue
  namespace: default
spec:
  retry: 0
  checksum: "10a3145a5101c00977091e7c946086edcc5e4acf8dfb57b1e912fdf27c23899cedc12cf14ef503a18a1018f917066149957d7460f3c080e2891af64cac05bc35"
  displayName: systemrescue-11.00-amd64.iso
  sourceType: download
  url: https://fastly-cdn.system-rescue.org/releases/11.00/systemrescue-11.00-amd64.iso

Modify the checksum to make it invalid.

Verified this enhancement has been applied.
Test Information

Environment: qemu/KVM 3 nodes
Harvester Version: v1.4-1305f11-head
ui-source Option: Auto

Verify Steps

Install Harvester with any nodes
Create image by URL
a. Image should able to be created without input checksum
b. Image should able to be created with valid checksum
c. Image should NOT able to be created with invalid checksum


Remove depricated use of max_redirects from Growing.pod

Noticed this in the tests when following the Growing Guide:
t/login.t .. Test::Mojo->max_redirects is DEPRECATED!
I think this commit fixes the documentation correctly.

Now if only I could spell deprecated... oh look... I did it. :-)