DoctrineCurrencyAdapter will initialize every time I call convert

Every time I call convert() the initialize method is called from the DoctrineCurrencyAdapter because the initialized property is not set to TRUE in the initialize method this calls the findAll() method which executes a select query every time.

Hi, thx to notice that, I've updated the code.


TypeError: 'NoneType' object is not subscriptable

I get this error after upgrading to 0.2.1
Even before the upgrade I already got "sensor unavailable" error for my county
Logger: homeassistant.components.sensor
Source: custom_components/rki_covid/sensor.py:74
Integration: Sensor (documentation, issues)
First occurred: 9:05:03 AM (2 occurrences)
Last logged: 9:05:03 AM
Error while setting up rki_covid platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 199, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/rki_covid/sensor.py", line 53, in async_setup_entry
sensors = [
File "/config/custom_components/rki_covid/sensor.py", line 54, in
RKICovidNumbersSensor(coordinator, district, info_type) for info_type in SENSORS
File "/config/custom_components/rki_covid/sensor.py", line 74, in init
data = coordinator.data[district]
TypeError: 'NoneType' object is not subscriptable

double entry with #13

double entry with #13


Uncaught error is popping up

Uncaught TypeError: Cannot set properties of undefined (setting 'moveUp') at Game.blurHandler is emitted randomly probably from a key event. The problem is on game.js:353:29


table designer bug fixes

This PR fixes #18700
currently, user has to move the focus to a different cell in order to commit the change, this is the default slick grid behavior.
with automatic commit:

This PR fixes #18699
root cause: the editor component is not wired to the theme change event.
Before:

After:

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 48.238%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
14959

Relevant Lines:
29405

💛  - Coveralls


problem with target and action

I add this code in viewDidLoad(), but only works a slide, and pressing the button does not open the sidebar. What's my mistake?
if self.revealViewController() != nil {             menuButton.target = self.revealViewController()             menuButton.action = #selector(SWRevealViewController.revealToggle(_:))             self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())             }

Is your button connected to the outlet?

@iDevelopper, yes of course

I don't understand why your button is in the rear view and not in the front view.

@iDevelopper I don't understand you

Great!

Im using Swift3  and I get an error if I try to set up the target of the button like this:
sidebarButton.target = self.revealViewController()
"Cannot assign to property: 'target' is a method" is the error. I cant figure out how to set it up.
Can someone help?
Cheers,
K

This is a UIButton?
func addTarget(Any?, action: Selector, for: UIControlEvents)

Yes its a UIButton.
I tried
sidebarButton.addTarget(revealViewController(), action: #selector(SWRevealViewController.revealToggle(_:)), for: .touchUpInside)
but nothing happens

Nevermind I got it to work. Forgot to put SWRevealViewControllerSegueSetController class to sw_rear view


Add start script handling for Distributions tasks

This code does two things:

Adds code to handle updating CreateStartScripts configuration in the same way that the JavaExec task is updated. This allows the assembleDist task to create usable startup scripts.
Updates the build to gradle 7.4.2 (Mainly because I only have access to an M1 Mac and can't build with gradle 5.5.1)

To accomplish this, I abstracted the common behavior in ExecTask into a JavaFXTask base class and added the StartScriptsTask. This is probably not the cleanest implementation but it appears to work in my local testing.
It may be possible to back out the gradle update, but I would have no way to test that.

@jperedadnr or @abhinayagarwal my apologies if this is a breach of protocol, what's the best way to get reviewers for a pull request?

This PR has conflicts now that https://github.com/openjfx/javafx-gradle-plugin/pull/151 was merged.


Feature Request: Serial queue access to Realm

From reading issues and help forums, it seems that (as always with DBs) threading continues to be a big problem for Realm users, especially in regards to GCD.
For many people, these ACID type guarantees are totally overkill. On an iOS app that is using Realm as a persistent and queryable cache (I would suspect a large subset of your users), it very rarely matters if one thread overwrites the changes from another thread as most things are about shuffling data from the network to cache and from the cache to the UI.
What would be ideal is if there was an option to have a serial queue to the DB like you see with something like Redis. That would solve this threading madness and give me enough consistency guarantees without the headache. Since the DB is not busy, I am unlikely to see any performance hit.

I'm really not sure what problem you're aiming to solve. What madness about threading are you referring to that would be solved by serial access?
First, I encourage you to read our docs on threading and this threading deep dive article if you haven't already.
Write access is already serial, reads are concurrent (we wouldn't want to block the UI thread after all 😬).
To make all reads serialized would mean that any background thread reading would block the main thread, blocking your app's UI.
I'd love to hear more about the symptoms of the problem you're seeing in more detail, to see how we can address them. Thanks for taking the time to share your thoughts!

That blog post was a great write up. Thanks!
I'm aware of the consequences of putting things on a serial queue and removing consistency guarantees.
The perspective I am coming from is probably like a lot of your users: using a database running on a different process than the client in a server environment. So admittedly I am projecting that perspective onto how Realm works or would ideally work for me.
I guess what I am looking for is not a persisted object graph, but for Realm to behave like a traditional database and when I do a query to get a result set, I get a copy of the objects. Thus I can pass around the objects to different threads. Obviously this would require that if I wish to make modifications to the object, I must explicitly do a write, and risk overwriting changes made elsewhere. From what I gather this would be less performant on the query side, but would also enable me to do everything in the background and pass the results to the main thread.
Right now, it seems unusually tedious to code around these threads (although the notifications help quite a bit), and I'm not sure that I need the benefits it gives me (namely the live updating objects and strong consistency).
Having said all that, I really like a number of things about Realm! Good work so far.

On Jun 18, 2016, at 06:04, JP Simard<EMAIL_ADDRESS>wrote:
I'm really not sure what problem you're aiming to solve. What madness about threading are you referring to that would be solved by serial access?
First, I encourage you to read our docs on threading and this threading deep dive article if you haven't already.
Write access is already serial, reads are concurrent (we wouldn't want to block the UI thread after all 😬).
To make all reads serialized would mean that any background thread reading would block the main thread, blocking your app's UI.
I'd love to hear more about the symptoms of the problem you're seeing in more detail, to see how we can address them. Thanks for taking the time to share your thoughts!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Would a detachedCopy() function on Object suit your needs?

@JadenGeller Yeah that would probably do the trick.

Materializing a Realm object graph into memory, detaching the entire graph from the database, is at most a workaround for some limitations. The memory overhead of doing this is potentially large, plus you lose essentially all of Realm's features in doing so (live objects, consistency, queries, interprocess/interthread data sharing, notifications, persistence, etc).
There are a few solutions to this:
1. Async transactions (#3136)
Explicitly scoping the data available on a new thread or queue gives a large amount of flexibility regarding doing things across multiple threads, with reduced risk of object graphs at different database versions of interacting.
2. Version pinning (untracked)
Having the ability to pin or freeze a Realm at a given version, producing immutable Realm objects and other accessors that aren't thread-confined would solve other types of situations. However, this is at greater risk of having users forget which accessor is at which version and attempt to make mismatched accessors interact.

It's worth saying that both these approaches are mostly supported in Realm's core, but that coming up with a viable higher-level API without high risk of misuse is challenging.
We also have a more general issue open where we're discussing some of these topics in #1097.
I'll be closing this issue to keep the conversation localized in #1097, but we should definitely continue exploring this.


Improve flexibility

Change content and motivation

Some apps require larger local disk space or the use of a converged storage solution,
this can easiest be completed by adding storage to the worker nodes.
Some clusters has external ingress controllers available, add the option to not deploy traefik.
There is a need to talk to the kublets when monitoring the kubernetes back plane.

Hi @jbygdell, thanks for your contribution. I'll leave this to @andersla since you are merging against his branch.

Tack så mycket!


Suggestion: Regexp quick reference

Have a panel with a quick regexp reference something like the one attached.

Looks very cool, if someone would like to provide a PR for i will added it :)


Stealth

Short Description:
Update the bot so api call look more like the real app.
@OpenPoGo/maintainers

It seem to work, even if we need more testing.
However, I can use some help on unit testing. I'm really not good at this...


Improve memory usage of ModelScenario

We're looking at improving the memory usage of ModelScenario.
We could try using zarr stores to cache the loaded data and the intermediate data created by some of the methods.

This will be completed by the quick fix to reduce memory consumption in the code as it is now (@brendan-m-murphy). How this relates to the special release will be considered later.

We need to sit down and look at this and profile the usage when using co2 data. Talk to Eric for input on this.


Custom checker for half-open state like ReadyToTrip (Take 2)

Reviving PR https://github.com/sony/gobreaker/pull/28, including the suggested refactor.
Ping @chiendo97 @kubudi (https://github.com/sony/gobreaker/pull/28#issuecomment-2022825494)

Hey folks, anything we can do to move this forward?

This PR breaks the backward compatibility.
So, you need to introduce this feature as v3.
I have written the specification for v3:
https://github.com/sony/gobreaker/wiki/Draft-Specification-for-V3


[Protein Solvation] Download examples from RSCB

In this PR, I've added a submodule called examples to the molecules module. It consists of a set of functions to download proteins directly from the RSCB database.
I've also updated the example in the README to use the lysozyme, since alanine is too small and the resulting visualization doesn't have a backbone. I think a larger protein is best to showcase what we can do.
In another PR I will update the images in the README.
How did I test this?
Normal behaviour:

Incorrect pdb_id:

Can you please add a section with "How did I test this?"

THANK YOU! :)


Can't update MA from HACs

What version of Music Assistant has the issue?
2022.7.2
The problem
After analysing logs in HACs... it seems that I am trying without success to update MA with patch-2022.7.3. Seems this file is no more present in the github. Is possible to have it availabe in otder to have a normal MA update ?
How to reproduce
Just try to click on the update button
Relevant log output
022-08-24 15:53:34.883 ERROR (MainThread) [custom_components.hacs] <Integration music-assistant/hass-music-assistant> GitHub returned 404 for https://api.github.com/repos/music-assistant/hass-music-assistant/git/trees/patch-2022.7.3
"pushed_at": "2022-08-23T21:18:45",
"releases": true,
"selected_tag": "patch-2022.7.3",
"version_installed": "2022.7.2",
"last_fetched":<PHONE_NUMBER>.722832
Additional information
No response
What version of Home Assistant Core are your running
20228.6
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
ODROID

You need to update MA to 2022.8.x as you are running HA 2022.8.6. That option should be in HACS?

No I can't update anything .... that's the main problem since more than in month....
When I click on update I got this error file in hacs pointing the missing file....

No, we can't bring that file back. Besides that it is an old version too.
Can't you just remove Music Assistant completely from HA and HACS and reinstall ?
Or press the button "Update information" first ?

No, we can't bring that file back. Besides that it is an old version too. Can't you just remove Music Assistant completely from HA and HACS and reinstall ? Or press the button "Update information" first ?

I tried all your options.... nothing worked unfortunatly .... :(

Are you on HA version 2022.8.x ?

I don't know in the ./storage/hacs.repositories   mentioned with patch file.... impossible to update it manually for another version...

Maybe try to update it manually ?
Download the zipfile for the latest release: https://github.com/music-assistant/hass-music-assistant/releases/download/2022.8.4/mass.zip
unpack it in the custom_components folder, overwriting the existing content

I already tried that option too :( :(

In that case the only option is to remove HACS completely and reinstall. Also delete all the HACS related files and folders.
We can't help you on this I'm afraid as it is strictly taken an HACS issue and not a MA issue.

I see ... in Hacs issue, they said it's a MA issue (deleted file)....

It is not too uncommon that a release is replaced. Bad things happen and code needs to be guarded for that. I find it kind of strange that the whole thing is unrecoverable crashed due to the fact that we deleted a release 10 minutes after it was published (because it was faulty). I really do not understand why HACS keeps grabbing a tag that does not exists, in my opinion that is a bug in HACS.
This is why we have backups so we can restore after something bad happened ;-)
I have recreated that missing tag but I don't think that will fix the issue.

Ok ... I had to delete all HACS and ./storage associated files and also all integrations/frontend one by one :( :( ...
But at least I got an MA updated..... so now for sure I will wait a while before a new MA update...


created a version that would include take the app name from encrypted payload in CSTGrequest for app name check

no longer needed


chore: backports for leanprover/lean4#4814 (part 32)

Could you rename the sections per https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/New.20variable.20inclusion.20mechanism/near/457064023?

bors d+


Print Code128. Am I code it wrong?

Am I code It wrong, because code type also printed.
I need to only printed<PHONE_NUMBER>59
Please help

  /// CODE128
  ///
  /// k >= 2
  /// d: '{A'/'{B'/'{C' => '0'–'9', A–D, a–d, $, +, −, ., /, :
  /// usage:
  /// {A = QRCode type A
  /// {B = QRCode type B
  /// {C = QRCode type C
  /// barcodeData ex.: "{A978020137962".split("");

    final List<dynamic> barcdA = "{A002518276559".split("");
    final List<dynamic> barcdB = "{B002518276559".split("");
    final List<dynamic> barcdC = "{C002518276559".split("");

    ticket += generator.text("code128 A");
    ticket += generator.barcode(Barcode.code128(barcdA));
    ticket += generator.text("code128 B");
    ticket += generator.qrcode(Barcode.code128(barcdB));
    ticket += generator.text("code128 C");
    ticket += generator.qrcode(Barcode.code128(barcdC));

You solved the problem, could you print codebar 128?

is there any solution?


IIS Server & +lazy-route not compatible

The default security for IIS disallows + in the path names. When you try to go to a route where the parent component's directory is prepended with a + , the browser console logs a 404 error for all the parent component's resources: http//:localhost:4200/subject
If you try and hit a resource directly in the browser, IIS gives you a 404.11 error: http://localhost:38772/app/+subjects/shared/index.js
HTTP Error 404.11 - Not Found
The request filtering module is configured to deny a request that contains a double escape sequence.

We have it planned to be able to configure the prefix for routes, but that feature isn't implemented yet.
Meanwhile, the workaround is to generate routes and remove the prefix manually.

Thanks @filipesilva. Would you happen to know the ballpark ETA on that feature?

I don't have a rough ETA, no. But I labelled it as required which means it'll be there before 1.0 version of the CLI for sure.

I haven't tried it, but it looks like https://github.com/angular/angular-cli/pull/846 addresses this.

you can do a url rewrite something linke this
<security>         <requestFiltering allowDoubleEscaping="true"/>     </security>      <rewrite>       <rules>         <rule name="AngularJS Routes" stopProcessing="true">           <match url=".*" />           <conditions logicalGrouping="MatchAll">             <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />             <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />             <add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />           </conditions>           <action type="Rewrite" url="/" />         </rule>       </rules>     </rewrite>

Oh wow, I completely forgot to check the current master! Thanks for catching it @delasteve!
So yeah, it should be in the next beta then. I'm closing the issue then, but feel free to reopen if it doesn't work when the next version is out.


I need to zoom the font at 1920x1080

DO I need to hack the default theme for this?

This I found more agreeable on my setup.
@font-face {
  font-family: "DejaVu Sans Mono";
  src: url("UbuntuMono-R.ttf");
}

.terminal_container, .terminal, .CodeMirror {
    font-family: "DejaVu Sans Mono";
    font-size: 16px;
    color: #b2b2b2;
    background-color: #000;
    outline: none;
}


Decrease Microsoft.Build.Utilities.Core to 17.11.4

This MSBuild package version comes from .net9 that can cause issues in runtime due to assemblies mismatch.

We are not against updating to .NET 9, though already noticed some issues indeed :(
I'll investigate what's the right way of managing this.

So far it looks @kant2002 managed to fix the problems by pinning to .NET 9: https://github.com/ForNeVeR/Cesium/commit/4aada49a04e621834c42372478512ab0488e963e
Thanks for help anyway!


Logo

We may want to alter this later but I'd like to try this one and see if it sticks

If you are keen there's also the boat in ascii_art.py to update :)

@elibrumbaugh and i are working on a new logo for superset. let's close this for now in favor of the work we are doing.


Question: Supporting GitHub CODEOWNERS

Hey Siggi,
Did you consider supporting GitHub CODEOWNERS with the ownership feature? :)
I see now the input format is a yaml - was there any particular reason for that format? I'm not sure if this yaml is any standard coming from somewhere 🤔
The reason I ask for GitHub CODEOWNERS is that it is somehow a "standard" supported by GitHub and few other tools with specific file format etc. so for some projects (like the ones I'm involved 😛 ) there wouldn't be a need to generate a specific ownership yaml from CODEOWNERS which is used as source of truth.
Thanks for the answer and the plugin 👏

Hey @jraska 👋
The format is non-standard, but loosely based on Gerrit owners plugin https://gerrit.googlesource.com/plugins/owners/+show/master/config.md
One problem with CODEOWNERS, and part of the reason I didn't use it, is that it doesn't necessarily map to gradle modules since a module can have 0..n owners 💭
Going to take a quick stab at supporting something.

@jraska could you take a look #6, maybe throw some real data at it and see how it reacts?

Hey @siggijons, thanks for trying it!
I completely get the problem with ambiguous module owners as CODEOWNERS is not module based :) even if used like that very often 🤷
I tried the plugin from this branch and I think it struggles with whitespaces
Only a single module got attributed properly in an example input
/module-dir       @team-one  # no owner
/other-module-dir @team-one  # single space, attributed properly
/one-more.        @team-one  # no owner

Hey @jraska
Fixed the regex for space matching and added test 33f21a16f1cc988dc86d8d7551a822c7a835e93a
Can you see if this works better?

Yes, works well now on project I tried. Thanks!


iteration file size

Dear Chris,
Thank you for developing and maintaining  the repository.
I have a question regarding iterations fastq files.
I am running the MITObim on 126G file.
I am wondering if the size of fastq files in each iterations need to reach 126G before moving to the next iteration if necessary ?
I particularly mean files like the below file e.g  culatus-readpool-it0.fastq.
If this is the  case I think I need to subsample input file.
Many thanks in advance

Thanks Chris for your kind email.
I started running the actual run on our chpc. As you better  know due to wall time limits I had to resume the assembly  from previous iteration where it ended.
I see in the log file that while the contig file size of the last iteration was 10k bp, the new run log files shows that contigs are building up from seed size(?) again. It is back to 1096 bp again. Is there anything I have missed ?
Many thanks
I have embedded the  the last few lines of the log file:==============
ITERATION 44
Nov 22 18:19:53
recover backbone by running miraconvert on maf file
fishing readpool using mirabait (k = 31)
fishing readpool using mirabait (k = 31)
running mapping assembly using MIRA
readpool contains 71524 reads
assembly contains 1 contig(s)
contig length: 1067
now removing directory iteration41

Sorry Chris ! I guess I got my  answer in the source code:
quick option selected! -maf option will be ignored (if given)
cheers


DateInput looks insensitiv by default

As shown in the image, DateInput looks insensitiv by default.
Code
class DateInputExample(rio.Component):
    label: str = "Label"
    value: date = field(default_factory=date.today)

    def build(self) -> rio.Component:
        return rio.DateInput(
            label=self.label,
            value=self.bind().value,

        )

Look

I think we should also include the same attributes as TextInput and NumberInput where applicable.
e.g.:
is_sensitive: bool = True
is_valid: bool = True

made a seperate issue #89. Therefore, we can ensure that all our input components maintain a uniform interface, making them easier to use and understand.

made a seperate issue #89. Therefore, we can ensure that all our input components maintain a uniform interface, making them easier to use and understand


Intended functionality of Assignment#past_all_due_dates? with sections enabled

There are two pending RSpec test in the Assignment model spec that are both related to the Assignment#past_all_due_dates? method.
It is unclear whether or not past_all_due_dates? should also check the assignment's due_date attribute when section's are enabled.
Options

If every student does not need to be assigned to a section (with it's own SectionDueDate), then the method should also check the assignment's due_date as that is the due date those students would go by.
If every student needs to be assigned to a section when sections are enabled, then the method should most likely not check the assignment's due_date as every student will have a SectionDueDate to go by.

I think option 1 is the way to go.
We should not have to require that all students belong to a section and the assignment due date should apply for students not in a section or for students in a section without a section due date for a given assignment.


Radius

nice component , great work.
anyway , how to change radius circular progress, expected to simply change radius
<CircularProgressbar percentage={this.state.value1} radius={25} />
thanks

You can size the component simply by specifying the size of the wrapping container, e.g.:

  <CircularProgressbar percentage={20} />

If you want to change the size of the bar itself, you can use the strokeWidth prop:

  <CircularProgressbar percentage={20} strokeWidth={15} />

Hope that answers your question!


php artisan vendor:publish republishes pagination views over and over again

Laravel Version: 5.3.9
PHP Version: 7.0.9
Database Driver & Version: MySQL 5.7

Description:
php artisan vendor:publish republishes pagination views over and over again, where other published views and settings are only published once.
Steps To Reproduce:

Run php artisan vendor:publish in your project root twice
.. That's it ..

What do you mean by over and over again? Do you mean it's overriding the already published ones?

I haven't tested if it actually overrides, however it states that it copied
the directory
On Sun, 25 Sep 2016 at 17.31, Mohamed Said<EMAIL_ADDRESS>wrote:

What do you mean by over and over again? Do you mean it's overriding the
already published ones?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/laravel/framework/issues/15601#issuecomment-249428139,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACkJPXBqQPjiwwJTu2zFFblgkij-XjeWks5qtpPVgaJpZM4KF7Uz
.

--
Mvh
Lasse Rafn

Well it won't override, there's nothing wrong with these messages actually, not sure where's the bug :)

@themsaid oh well, I guess thats no problem then :) Will close this again, sorry


Can Rasa_core connect multiple Rasa_nlu

Rasa Core version: 0.8.5
Python version: Python 3.6
Operating system (windows, osx, ...): Windows 10
Hi,
I am wondering if a Rasa_core can connect multiple rasa_nlu? In my scenario, there are tens of intents. I think it may be better to classify intents to categories and each rasa_nlu for a category. And there is one center rasa_nlu that is to decide which domain it is, and then pass to the specific rasa_nlu. I just think it may can improve the accuracy. Is that possible to achieve? Or is one rasa_nlu can handle tens of intents? Thank you.

Yes that number of intents should be no problem with one NLU model. As long as you have enough training examples and the intents aren't too easily confused. You can use the evaluate script to test how well your model is doing https://nlu.rasa.com/evaluation.html

If you really want to do this, though, you can. You just have to subclass the Interpreter class, creating something like a MetaRasaNLUInterpreter

@akelad So Theoretically, rasa_nlu can handle even more than one handred intents as long as I have enough training examples and intents are not too easily confused, right?

@akelad @amn41 Can I ask if you we need to handle handreds of intents, can we use single rasa_nlu to train? Or is there a better solution? Thank you.

If there's hundreds of intents, then it'd probably be better to have multiple nlu models and use them according to the use case you're currently dealing with.

I'll close this for now, please let us know if you have any further questions.


⚠ Bofrost.at has degraded performance

In e6934e2, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1690 ms

Resolved: Bofrost.at performance has improved in 55da127 after 15 minutes.


xSPUsageApplication should use PSCredential instead of username and password parameters

This bug is a result of PSScriptAnalyzer scan:
RuleName                                                                         Severity              FileName                                                             Line                  Message
--------                                                                                --------                    --------                                                                    ----  -------
PSAvoidUsingUserNameAndPassWordParams    Error                      MSFT_xSPUsageApplication.psm1           112   Function 'Test-TargetResource' has both username and
password parameters. A credential parameter of type PSCredential should be used.
PSAvoidUsingUserNameAndPassWordParams    Error                     MSFT_xSPUsageApplication.psm1            58    Function 'Set-TargetResource' has both username and
password parameters. A credential parameter of type PSCredential should be used.
PSAvoidUsingUserNameAndPassWordParams    Error                     MSFT_ xSPUsageApplication.psm1           1     Function 'Get-TargetResource' has both username and
password parameters. A credential parameter of type PSCredential should be used.

We should have single parameter credential of type PSCredential instead of using both username and password parameters.

The fix for this is in #97 and I will close this issue off once it has passed review and is merged in to the dev branch

PR #97 is now merged in to dev and this issue has been resolved.


Add an entry to the addins menu

Add an entry to the addins menu to start the addin's interface.
At the beginning it is sufficient, when a MsgBox appears.

Released with version <IP_ADDRESS>


installing Chrome ext - getmystuff

I have tried many times to install this extension (getmystuff) but I just get a dead response - nothing happens at all.  I need a hand troubleshooting this!  Thank you,
Ro L.

Hm, looks like the installation via https://freeyourstuff.cc/ is currently broken, will investigate. Try installing directly from the extension store: https://chrome.google.com/webstore/detail/free-your-stuff/hlkhpekhgcaigleojiocoeockhcaglia?hl=en

Installation via website should be fixed now; let me know if you still encounter this problem. Closing for now.


Backlink to Unikube from Docs

Clicking on the Unikube logo when in "Docs" refers back to the Unikube Homepage - but when you are deeper into the navigation e.g. getting started/installation the backlink only refers to the docs landing page.
https://unikube.io/docs/ --> backlink to Unikube HP works
https://unikube.io/docs/guides/getting-started/ --> backlink to Unikube HP doesn't work but redirects to Wiki-Starting Page

@tobifroe another website topic for you

@marty-2015 Done.

thanks @tobifroe


Unable to enable sample application

In order to build with the 1.1-SNAPSHOT in the repositories at the moment, the pom.xml  has to be adjusted:
        <version.jeecqrs>1.0.0</version.jeecqrs>
        <version.jeecqrs.jcommondomain>1.0.0</version.jeecqrs.jcommondomain>
        <version.jeeventstore>1.1.0-SNAPSHOT</version.jeeventstore>

becomes
        <version.jeecqrs>1.1-SNAPSHOT</version.jeecqrs>
        <version.jeecqrs.jcommondomain>1.1-SNAPSHOT</version.jeecqrs.jcommondomain>
        <version.jeeventstore>1.1-SNAPSHOT</version.jeeventstore>

Application server: Wildfly 8.2
After configuring a datasource
java:/datasources/QuickstartExampleDS
Connection URL: jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
Enabling the sample application fails with
Request
{
    "address" => [("deployment" => "jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear")],
    "operation" => "deploy"
}

Response

Internal Server Error
{
    "outcome" => "failed",
    "failure-description" => {"JBAS014671: Failed services" => {
        "jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.RegisterSagaHandlersEventBusListenerRegistry.START" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.RegisterSagaHandlersEventBusListenerRegistry.START: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBTransactionRolledbackException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBException: JBAS014580: Unexpected Error
    Caused by: java.lang.Error: Unresolved compilation problem:
	Type mismatch: cannot convert from Iterator<SagaConfigProvider<? extends Saga<?>,?>> to Iterator<SagaConfigProvider<?,?>>
",
        "jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.SagaConfigResolver.START" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.SagaConfigResolver.START: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBException: JBAS014580: Unexpected Error
    Caused by: java.lang.Error: Unresolved compilation problem:
	Type mismatch: cannot convert from Iterator<SagaConfigProvider<? extends Saga<?>,?>> to Iterator<SagaConfigProvider<?,?>>
",
        "jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.JEECQRSEventBus.START" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"jeecqrs-quickstart-sample-ear-1.0-SNAPSHOT.ear\".\"jeecqrs-jcommondomain-persistence-jeeventstore-ejb-1.1-SNAPSHOT.jar\".component.JEECQRSEventBus.START: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBTransactionRolledbackException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBTransactionRolledbackException: JBAS011048: Failed to construct component instance
    Caused by: java.lang.IllegalStateException: JBAS011048: Failed to construct component instance
    Caused by: javax.ejb.EJBException: JBAS014580: Unexpected Error
    Caused by: java.lang.Error: Unresolved compilation problem:
	Type mismatch: cannot convert from Iterator<SagaConfigProvider<? extends Saga<?>,?>> to Iterator<SagaConfigProvider<?,?>>
"
    }},
    "rolled-back" => true
}

Strange, thanks for reporting.
What is your JDK version?  It definitely works with 1.7.0_79 here (both on Mac and Ubuntu), just tested on Wildfly 8.2.1.Final

Thanks for your fast reaction. I was running 1.8.0. I just downgraded to a 1.7.0_75 and the error remains the same.

It actually was a compile time problem. I have no idea why maven allowed the module to be built without an error, but in package org.jeecqrs.sagas.config.autodiscover.AutoDiscoverSagaConfigResolver
Changing the type of the iterator variable as follows fixes the problem, and I was able to run the quickstart demo.
	@PostConstruct
	public void startup() {
		log.info("Scanning saga config providers...");
		Iterator<SagaConfigProvider<? extends Saga<?>, ?>> it = select(providers);
		if (!it.hasNext())
			log.warning("No saga config providers found.");
		while (it.hasNext()) {
			this.registerUntyped(it.next());
		}
	}

Is there a way to contact you outside of github? I am considering using jeeventstore in a teaching context.

OK, I already committed a fix: https://github.com/JEEventStore/JEECQRS/commit/3f4dbfca39fae5bd12c98453848bf26656964572#diff-50956062a060ddc714f1c6a7a772d227
I would enjoy seeing jeeventstore being used in a teaching context, you can reach me at<EMAIL_ADDRESS>


ESP32-S3: Async SPI DMA transfers stall at some point

This issue is opened by request of @bugadani at the Matrix chat.
While initially working, the call to write_async().await (and probably also other related functions) stalls at some point. It's not reproducable when this exactly happens.
HAL revision: 49e14b7ccb10dfe5b4b6ed561759372303beddb1.
I use DMA channel 1 for the SPI transfers. Channel 0 is also used for I2S transfers.
Relevant code:
pub async fn spi_write_read(
    &mut self,
    write_buffer: &[u8],
    read_buffer: &mut [u8],
) -> Result<(), Error> {
    self.cs_pin.set_low();
    let result1 = self.spi.write_async(write_buffer).await;
    let result2 = self.spi.read_async(read_buffer).await;
    self.cs_pin.set_high();

    if result1.is_err() || result2.is_err() {
        return Err(Error::SpiTransferFailed);
    }

    Ok(())
}

I just want to add that https://github.com/esp-rs/esp-hal/pull/2065 was aiming at addressing this, but apparently the issue is somewhere else.

Following. I think I'm having a similar issue with ESP32-C3 after updating to v0.20.1.

@sourcebox what other operations do you perform on the SPI? Or is that the only function that uses SPI in your project?

SPI is only used for an external flash chip. When the firmware boots, a bunch of configuration data is read from the flash using sequential-storage. It's about 16 items that are read in a loop. Sometimes, it works perfectly, sometimes only a few items are read, then it stalls. As long as the read operations succeed, the returned data seem to be correct.
No write operations are done. By putting some log statements at various points, I was able to track down that in the shown function, the write_async is called, but nothing after it.
What's also strange is the fact, that replacing the write_async/read_async sequence with transfer_asyc always leads to return garbage data. So something seems to go really wrong in the whole process.
The full code of the flash driver is this:
//! Asynchronous driver for the SPI flash chip.

use embedded_storage_async::nor_flash::{
    ErrorType, NorFlash, NorFlashError, NorFlashErrorKind, ReadNorFlash,
};

use crate::hal::{
    dma::DmaChannel1,
    gpio::*,
    peripherals::SPI2,
    spi::{master::SpiDmaBus, FullDuplexMode},
    Async,
};

/// Size of a page in bytes.
pub const PAGE_SIZE: u32 = 256;

/// Size of a sector in bytes.
pub const SECTOR_SIZE: u32 = 4096;

/// Number of pages.
pub const NUM_PAGES: u32 = 2048;

/// Number of sectors.
pub const NUM_SECTORS: u32 = NUM_PAGES / 16;

/// Total capacity in bytes.
pub const CAPACITY: u32 = PAGE_SIZE * NUM_PAGES;

/// Type alias for the SPI peripheral driver.
type SpiDriver = SpiDmaBus<'static, SPI2, DmaChannel1, FullDuplexMode, Async>;

/// Type alias for CS pin.
type CsPin = Output<'static, Gpio33>;

/// SPI flash chip.
pub struct Flash {
    /// SPI driver.
    spi: SpiDriver,

    /// Chip-select pin.
    cs_pin: CsPin,
}

impl Flash {
    /// Returns a new instance.
    pub fn new(spi: SpiDriver, mut cs_pin: CsPin) -> Self {
        cs_pin.set_high();
        Self { spi, cs_pin }
    }

    async fn read_status_async(&mut self) -> Result<u8, Error> {
        let mut buffer: [u8; 2] = [0; 2];
        buffer[0] = commands::READ_STATUS_REGISTER_1;

        self.cs_pin.set_low();
        let result = self.spi.transfer_in_place_async(&mut buffer).await;
        self.cs_pin.set_high();

        if result.is_err() {
            return Err(Error::SpiTransferFailed);
        }

        Ok(buffer[1])
    }

    /// Check the status register busy flag.
    async fn is_busy_async(&mut self) -> Result<bool, Error> {
        Ok((self.read_status_async().await? & 0x01) != 0)
    }

    /// Reads a chunk of bytes.
    pub async fn read_async(&mut self, address: u32, buffer: &mut [u8]) -> Result<(), Error> {
        if address + buffer.len() as u32 > CAPACITY {
            return Err(Error::OutOfBounds);
        }

        let address_bytes = address.to_be_bytes();

        let write_buffer = [
            commands::READ_DATA,
            address_bytes[1],
            address_bytes[2],
            address_bytes[3],
        ];
        self.spi_write_read(&write_buffer, buffer).await?;

        Ok(())
    }

    /// Erases a single sector.
    pub async fn erase_sector_async(&mut self, index: u32) -> Result<(), Error> {
        if index >= NUM_SECTORS {
            return Err(Error::OutOfBounds);
        }

        self.enable_write_async().await?;

        let address: u32 = index * SECTOR_SIZE;
        let address_bytes = address.to_be_bytes();
        let write_buffer = [
            commands::SECTOR_ERASE,
            address_bytes[1],
            address_bytes[2],
            address_bytes[3],
        ];

        self.cs_pin.set_low();
        let result = self.spi.write_async(&write_buffer).await;
        self.cs_pin.set_high();

        if result.is_err() {
            return Err(Error::SpiTransferFailed);
        }

        while self.is_busy_async().await? {}

        for offset in (0..SECTOR_SIZE).step_by(64) {
            self.readback_check_async(address + offset, &[0xFF; 64])
                .await?;
        }

        Ok(())
    }

    /// Erases a range of sectors.
    pub async fn erase_range_async(
        &mut self,
        start_address: u32,
        end_address: u32,
    ) -> Result<(), Error> {
        if start_address % (SECTOR_SIZE) != 0 {
            return Err(Error::NotAligned);
        }

        if end_address % (SECTOR_SIZE) != 0 {
            return Err(Error::NotAligned);
        }

        if start_address > end_address {
            return Err(Error::OutOfBounds);
        }

        let start_sector = start_address / SECTOR_SIZE;
        let end_sector = end_address / SECTOR_SIZE;

        for sector in start_sector..end_sector {
            self.erase_sector_async(sector).await.unwrap();
        }

        Ok(())
    }

    /// Writes a chunk of bytes.
    pub async fn write_async(&mut self, mut address: u32, mut buffer: &[u8]) -> Result<(), Error> {
        if address + buffer.len() as u32 > CAPACITY {
            return Err(Error::OutOfBounds);
        }

        // Write first chunk, taking into account that given addres might
        // point to a location that is not on a page boundary,
        let chunk_len = (PAGE_SIZE - (address & 0x000000FF)) as usize;
        let chunk_len = chunk_len.min(buffer.len());
        self.write_page_async(address, &buffer[..chunk_len]).await?;

        // Write rest of the chunks.
        let mut chunk_len = chunk_len;
        loop {
            buffer = &buffer[chunk_len..];
            address += chunk_len as u32;
            chunk_len = buffer.len().min(PAGE_SIZE as usize);
            if chunk_len == 0 {
                break;
            }
            self.write_page_async(address, &buffer[..chunk_len]).await?;
        }

        Ok(())
    }

    /// Writes a single page of data.
    pub async fn write_page_async(&mut self, address: u32, buffer: &[u8]) -> Result<(), Error> {
        if (address & 0x000000FF) + buffer.len() as u32 > PAGE_SIZE {
            return Err(Error::OutOfBounds);
        }

        self.enable_write_async().await?;

        let address_bytes = address.to_be_bytes();
        let write_buffer = [
            commands::PAGE_PROGRAM,
            address_bytes[1],
            address_bytes[2],
            address_bytes[3],
        ];
        self.cs_pin.set_low();
        let result1 = self.spi.write_async(&write_buffer).await;
        let result2 = self.spi.write_async(buffer).await;
        self.cs_pin.set_high();

        if result1.is_err() || result2.is_err() {
            return Err(Error::SpiTransferFailed);
        }

        while self.is_busy_async().await? {}

        self.readback_check_async(address, buffer).await?;

        Ok(())
    }

    /// Returns the manufacturer and device id.
    pub async fn manufacturer_device_id_async(&mut self) -> Result<(u8, u8), Error> {
        let write_buffer = [commands::MANUFACTURER_DEVICE_ID, 0, 0, 0];
        let mut read_buffer = [0; 2];
        self.spi_write_read(&write_buffer, &mut read_buffer).await?;

        Ok((read_buffer[0], read_buffer[1]))
    }

    /// Returns the JEDEC id.
    pub async fn jedec_id_async(&mut self) -> Result<(u8, u8, u8), Error> {
        let write_buffer = [commands::JEDEC_ID];
        let mut read_buffer = [0; 3];
        self.spi_write_read(&write_buffer, &mut read_buffer).await?;

        Ok((read_buffer[0], read_buffer[1], read_buffer[2]))
    }

    /// Returns the unique id.
    pub async fn unique_id_async(&mut self) -> Result<[u8; 8], Error> {
        let write_buffer = [commands::UNIQUE_ID, 0, 0, 0, 0];
        let mut read_buffer = [0; 8];
        self.spi_write_read(&write_buffer, &mut read_buffer).await?;

        Ok(read_buffer)
    }

    /// Sets the write enable flag.
    pub async fn enable_write_async(&mut self) -> Result<(), Error> {
        let write_buffer = [commands::WRITE_ENABLE];
        self.cs_pin.set_low();
        let result = self.spi.write_async(&write_buffer).await;
        self.cs_pin.set_high();

        if result.is_err() {
            return Err(Error::SpiTransferFailed);
        }

        if !self.is_write_enabled_async().await? {
            return Err(Error::WriteNotEnabled);
        }

        Ok(())
    }

    /// Reads the write enable flag.
    pub async fn is_write_enabled_async(&mut self) -> Result<bool, Error> {
        Ok((self.read_status_async().await? & 0x02) != 0)
    }

    /// Checks if data readback matches.
    async fn readback_check_async(&mut self, mut address: u32, data: &[u8]) -> Result<(), Error> {
        const CHUNK_SIZE: usize = 64;

        let mut buf = [0; CHUNK_SIZE];

        for chunk in data.chunks(CHUNK_SIZE) {
            let buf = &mut buf[..chunk.len()];
            self.read_async(address, buf).await?;
            address += CHUNK_SIZE as u32;

            if buf != chunk {
                return Err(Error::ReadbackFailed);
            }
        }

        Ok(())
    }

    /// Issues an SPI write transfer followed by a read.
    pub async fn spi_write_read(
        &mut self,
        write_buffer: &[u8],
        read_buffer: &mut [u8],
    ) -> Result<(), Error> {
        self.cs_pin.set_low();
        let result1 = self.spi.write_async(write_buffer).await;
        let result2 = self.spi.read_async(read_buffer).await;
        self.cs_pin.set_high();

        if result1.is_err() || result2.is_err() {
            return Err(Error::SpiTransferFailed);
        }

        Ok(())
    }
}

impl ReadNorFlash for Flash {
    const READ_SIZE: usize = 1;

    async fn read(&mut self, offset: u32, bytes: &mut [u8]) -> Result<(), Self::Error> {
        self.read_async(offset, bytes).await
    }

    fn capacity(&self) -> usize {
        CAPACITY as usize
    }
}

impl NorFlash for Flash {
    const WRITE_SIZE: usize = 1;
    const ERASE_SIZE: usize = 4096;

    async fn erase(&mut self, from: u32, to: u32) -> Result<(), Self::Error> {
        self.erase_range_async(from, to).await
    }
    async fn write(&mut self, offset: u32, bytes: &[u8]) -> Result<(), Self::Error> {
        self.write_async(offset, bytes).await
    }
}

impl ErrorType for Flash {
    type Error = Error;
}

/// Errors.
#[derive(Debug)]
pub enum Error {
    /// SPI transfer error.
    SpiTransferFailed,

    /// Access not aligned.
    NotAligned,

    /// Access out of bounds.
    OutOfBounds,

    /// Write enable is not set.
    WriteNotEnabled,

    /// Readback of data failed.
    ReadbackFailed,
}

impl NorFlashError for Error {
    fn kind(&self) -> NorFlashErrorKind {
        match self {
            Error::NotAligned => NorFlashErrorKind::NotAligned,
            Error::OutOfBounds => NorFlashErrorKind::OutOfBounds,
            _ => NorFlashErrorKind::Other,
        }
    }
}

/// Flash commands.
mod commands {
    /// Read status register 1.
    pub const READ_STATUS_REGISTER_1: u8 = 0x05;

    /// Read data.
    pub const READ_DATA: u8 = 0x03;

    /// Enable writes.
    pub const WRITE_ENABLE: u8 = 0x06;

    /// Erase a sector.
    pub const SECTOR_ERASE: u8 = 0x20;

    /// Program a page.
    pub const PAGE_PROGRAM: u8 = 0x02;

    /// Read manufacturer and device ID.
    pub const MANUFACTURER_DEVICE_ID: u8 = 0x90;

    /// Read JEDEC ID.
    pub const JEDEC_ID: u8 = 0x9F;

    /// Read unique ID.
    pub const UNIQUE_ID: u8 = 0x4B;
}

@sourcebox can I ask you to please retest whether you still experience this issue?

It looks ok now, the transfer does not stall anymore.

That's great to hear! I'll close this now :).


Explorer doesn't remember collapse state if a folder contains certain characters

I have gotten a few reports that the Explorer's collapse state breaks on page navigation.
Both reports had the ' in one of their folders. After removing the character, the expected functionality started working as normally.
TODO

[ ] Escape ' character
[ ] Investigate if other special characters need escaping

Suspected problematic code
https://github.com/jackyzha0/quartz/blob/v4/quartz%2Fcomponents%2FExplorer.tsx#L71-L72
https://github.com/jackyzha0/quartz/blob/v4/quartz%2Fcomponents%2Fscripts%2Fexplorer.inline.ts#L130-L135

maybe this solution will solve your problem click


feat(core): Add support for secret key rotation

This PR adds support for secret key rotation and fixes #1038

This iooks great - thanks! The test failures are due to latest Flask 3.1 which I am looking into in the next few days.


Updating Python hot HTTP sample

using latest hotfn 0.0.5 release (made life lot easier)

https://github.com/fnproject/fdk-python/pull/1 <--- slightly modified version of hotfn-py.

@denismakogon take it this not ready since we changed library names and so on, don't see that reflected here. also needs rebase, not sure if part of last patch. want to update or should we close this ?

Yeah, need to release fdk in first place.

@treeder samples update with respect to first fdk release.


tosa.max_pool2d can't be legalized in dynamic ResNet

It looks like we fail to compile https://storage.googleapis.com/iree-model-artifacts/resnet_v1_101_dynamic.tflite
iree-compile --output-format=vm-bytecode --mlir-print-op-on-diagnostic=false --iree-hal-target-backends=llvm-cpu --iree-input-type=tosa --iree-llvm-target-cpu=cascadelake --iree-llvm-target-triple=x86_64-unknown-linux-gnu resnet.mlir -o resnet.vmfb

resnet.mlir:224:12: error: failed to legalize operation 'tosa.max_pool2d'
    %221 = "tosa.max_pool2d"(%220) {kernel = array<i64: 3, 3>, pad = array<i64: 1, 1, 1, 1>, stride = array<i64: 2, 2>} : (tensor<?x?x?x64xf32>) -> tensor<?x?x?x64xf32>

@mariecwhite, @rsuderman

Dynamic shape support TOSA side is WIP on the opsets themselves. In this case we may be able to handle in the lowering to LinAlg but no has looked into this AFAIK. I believe this was needed for evaluating a codegen change rather than customer need, ideally we'd support this but no work currently planned here.


Setup database migrations

Looks like we're going to have more database stuff than we initially thought. We're going to need to set up database migrations to make it more manageable when we need to make changes to the database.
Flask-Migrate is probably the best way to go here. We just need someone to set it up.
https://flask-migrate.readthedocs.io/en/latest/

@joshfraser @hucares This is now done, right?

Yes. Issue should auto close on github when referenced by PR that’s closed
but doesn’t for some reason
On Sat, Feb 17, 2018 at 4:24 PM Stan James<EMAIL_ADDRESS>wrote:

@joshfraser https://github.com/joshfraser @hucares
https://github.com/hucares This is now done, right?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/OriginProtocol/company-website/issues/59#issuecomment-366482224,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAR87MgBvBNJFvwEfzUABGGmeF3fOdqQks5tV23DgaJpZM4Ry3m0
.

Sweet. Thanks for your help on that, @hucares !


Update the README files and screen shots with recent changes

[x] This contribution adheres to CONTRIBUTING.md.

What does this Pull Request accomplish?
Review the README file for correctness and accuracy. Update screenshots that were out of date.
Why should this Pull Request be merged?
Outdated documentation and screen shots are confusing.
What testing has been done?
Local inspection of the README with the new images.

#176

@csjall @aepete @pbirkhol-ni I'm also sneaking this trivial change into this PR. I'm making the labels visible on Get Measurement Details.vi


Missing mutex directory after installation

Just noticed that after installation the node['apache']['lock_dir'] is not created until the first time starting the apache2 service. It causes an error while installing passenger apache2 module, because that process tries to detect apache2 by running through the conf file and the missing lock folder would fail it.
I am wondering which is the better way to solve this issue -- create the folder in my own recipe, start apache2 after installation, or create the folder in this cookbook like other folders it creates in the default recipe? What do you think?
Thanks!

Closing based on 03bd215, please create a new ticket and reference this if you see any related issues.


Does it support ProFace X device?

Does this library support the ProFace X devices?

I also have this device and it seems this library does not support

Does this library support the ProFace X devices?

Did you find anything to work with ProFace X device?


Is it possible to add reckless logging lib?

thanks.

Seems you have included it before.

Sorry for the late reply, I'm on parental leave away from computers.
If I remember correctly (and I can be wrong) Reckless didn't behave well with this type of testing. I vaguely remember some incorrect Thread Local Storage issues when restarting the logger multiple times.
Pull Requests are welcome.


fix import for Django 2

Hi,
I just tried to run airbrake-django on a Django 2 project and it fails on this import. I'm sure you want to handle Django versioning on a more complete way (btw it would really help to state on the Readme what versions are tested), so feel free to close this PR in this case.
Best,
Markos

Thanks @mgogoulos, I think this is apt. Especially w/Django 1.x and 2.x being deprecated.
FWIW if you've not already done so I'd recommend checking out the "new" Python notifier https://github.com/airbrake/pybrake

Thanks @phumpal  I've been using pybrake indeed


Fix output of OfferReportGenerator and generate its data more efficiently

The "offer performance" report has been broken since the changes to the ReportGenerator introduced in Oscar 3.0 .
This fixes the OfferReportGenerator to work with those changes, and also reimplements the data processing itself to do it via a database query instead of iterating over all the OrderDiscount objects. It also fixes the HTML template not to link to deleted offers, and orders the report by discount value.

Turns out the conditional lookup only works in Django 3.2. I'll see if I can find a solution that works in <3.1.


String.hashCode results in a different value in Web

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce

Calculate hashCode of String "996BDDA6832B"
Get results for web and iOS

Expected results
Hash code should be: 793389451
Actual results
Got: 188660191
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  final id = "996BDDA6832B";

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Text(
          id.hashCode.toString(),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
Web:

iOS/Mobile:

Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.13.0, on macOS 13.4 22F66 darwin-x64, locale en-PH)
    • Flutter version 3.13.0 on channel stable at /Users/----/fvm/versions/3.10.6
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision efbf63d9c6 (2 days ago), 2023-08-15 21:05:06 -0500
    • Engine revision 1ac611c64e
    • Dart version 3.1.0
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at /Users/----/Library/Android/sdk
    • Platform android-33, build-tools 33.0.2
    • ANDROID_HOME = /Users/----/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = /Applications/Chromium.app/Contents/MacOS/Chromium

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.81.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.70.0

[✓] Connected device (3 available)
    • master_device (mobile) • 2F46D562-801D-4710-97B2-E9A4BF1F7B1A • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)        • macos                                • darwin-x64     • macOS 13.4 22F66 darwin-x64
    • Chrome (web)           • chrome                               • web-javascript • Chromium 112.0.5615.137

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Please file issues with Dart in the Dart issue tracker. Closing as this is not a Flutter issue.
Note that it's likely that this will not be considered an issue, however. From the documentation for hashCode:

There are no further requirements for the hash codes. They need not be consistent between executions of the same program and there are no distribution guarantees.

Given that hashCode does not have to be consistent from run to run, having a different value in totally different compilation modes is likely expected behavior.


”Stănești”, ”Bărcănești”, ”Cioponești”, ”Cuculești”, ”Gârnicetu” are listed in the drop-down menu

Description:
When user writes ”Stănești”, ”Bărcănești”, ”Cioponești”, ”Cuculești”, ”Gârnicetu” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Stănești"

Expected results
The location appears in the drop-down menu as "Sat Stănești, VÂLCEA (Stănești)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Bărcănești"

Expected results
The location appears in the drop-down menu as "Sat Bărcănești, VÂLCEA (Stănești)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Cioponești"

Expected results
The location appears in the drop-down menu as "Sat Cioponești, VÂLCEA (Stănești)".

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Write in the search bar "Cuculești"

Expected results
The location appears in the drop-down menu as "Sat Cuculești, VÂLCEA (Stănești)".

Step 8
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 9
Write in the search bar "Gârnicetu"

Expected results
The location appears in the drop-down menu as "Sat Gârnicetu, VÂLCEA (Stănești)".


UAMP crashes with ForegroundServiceStartNotAllowedException when targeting API 31/32

The UAMP app crashes when trying to resume the playback session using the Google Assistant if the target and compile sdk is 31 or above
Steps to reproduce it:

Checkout the latest version of uamp and update the target and  compile sdk to API 31 or 32
Fix the compilation issues (adding flags to the manifest and some other classes)
Open UAMP app
Start playing something
Pause it
Background the app
Open the Google Assistant and say: resume
The app crashes:

    android.app.ForegroundServiceStartNotAllowedException: startForegroundService() not allowed due to mAllowStartForeground false: service com.example.android.uamp.next/com.example.android.uamp.media.MusicService
        at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:54)
        at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:50)
        at android.os.Parcel.readParcelable(Parcel.java:3333)
        at android.os.Parcel.createExceptionOrNull(Parcel.java:2420)
        at android.os.Parcel.createException(Parcel.java:2409)
        at android.os.Parcel.readException(Parcel.java:2392)
        at android.os.Parcel.readException(Parcel.java:2334)
        at android.app.IActivityManager$Stub$Proxy.startService(IActivityManager.java:6028)
        at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1855)
        at android.app.ContextImpl.startForegroundService(ContextImpl.java:1831)
        at android.content.ContextWrapper.startForegroundService(ContextWrapper.java:779)
        at androidx.core.content.ContextCompat$Api26Impl.startForegroundService(ContextCompat.java:933)
        at androidx.core.content.ContextCompat.startForegroundService(ContextCompat.java:701)
        at com.example.android.uamp.media.MusicService$PlayerNotificationListener.onNotificationPosted(MusicService.kt:577)
        at com.google.android.exoplayer2.ui.PlayerNotificationManager.startOrUpdateNotification(PlayerNotificationManager.java:1164)
        at com.google.android.exoplayer2.ui.PlayerNotificationManager.handleMessage(PlayerNotificationManager.java:1409)
        at com.google.android.exoplayer2.ui.PlayerNotificationManager.lambda$ZG0s-7uOzb-YtyUlp8ahx3j4wBg(Unknown Source:0)
        at com.google.android.exoplayer2.ui.-$$Lambda$PlayerNotificationManager$ZG0s-7uOzb-YtyUlp8ahx3j4wBg.handleMessage(Unknown Source:2)

Does the UAMP project still needs to be updated to comply with the latest restrictions around Foreground Services introduced in API 31 ? If this is the case, do you have any idea on when this would happen?
Is it possible that the problem is within the Google Assistant app?

It's a shame that this wasn't addressed one year ago when Android 12 was introduced. Is Google really unaware of this or are they just ignoring the consequences their bad API decisions have on apps? I really want to know how to solve this problem. I mean, they force developers to target the newest API levels and don't provide help on how to address such problems.
And btw, I think this doesn't relate to the Google Assistant because I have seen such crashes on devices where Google services are not available at all. I don't know how to reproduce it locally, but it's a fact that this crash happens on production apps.

It's a shame that this wasn't addressed one year ago when Android 12 was introduced. Is Google really unaware of this or are they just ignoring the consequences their bad API decisions have on apps? I really want to know how to solve this problem. I mean, they force developers to target the newest API levels and don't provide help on how to address such problems.
And btw, I think this doesn't relate to the Google Assistant because I have seen such crashes on devices where Google services are not available at all. I don't know how to reproduce it locally, but it's a fact that this crash happens on production apps.

We have opened an issue on their Issue Tracker in case you wanna also follow that one: https://issuetracker.google.com/u/1/issues/235172948

Also having this issue on one of our apps. I came here to see how Google solves the problem, only to find ... they haven't.

Any updates on this? We're also waiting for a solution

I think the issue come from here this line in Music Service :
        if (!playWhenReady) {
                            // If playback is paused we remove the foreground state which allows the
                            // notification to be dismissed. An alternative would be to provide a
                            // "close" button in the notification which stops playback and clears
                            // the notification.
                            stopForeground(false)
                            isForegroundService = false
                        }

The problem is that  notification can't be dismissed since Android 10 with a foreground service. The best way is may be to provide the "close button" and remove this part of the code.

Any Update

Hello,
Please post an update on this issue.
Thank you


add the docs on the lifecycle hooks in clients

Done. https://github.com/turms-im/turms/commit/a61b6566dd752c8e9832696e674016ba928023c3


Fix config selection

Addresses standardhealth/shr-cli#112

Config file names no longer need to end w/ config.json (but they do need to end with .json)
Fix file matching bug when filePath didn't have a trailing path separator

Also bumps version number to 5.4.1

Hmmm... Seems we have a lot of broken tests.  I'll take a look.

There were some legit broken tests before, which I fixed with a new force-push -- but there's still something else going on (basically, now the import-configuration tests are the only ones that pass).  I'll have to dig deeper.


colorscheme isnt correctly applied in markdown when vim.opt_local.spell = true

Description
when you set vim.opt_local.spell = true in markdown file, with treesitter installed for markdown, colorscheme is very weird
Neovim version
VIM v0.8.0-dev-1073-g2ea6584a1
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3

Operating system and version
Arch Linux
Catppuccin version / branch / rev
catppuccin main
Steps to reproduce

nvim --clean -u minimal.lua
open any markdown file

Expected behavior
this is with tokyonight colorscheme -

Actual behavior
this is what you see -

Minimal config
-- `minimal.lua` used for reproducible configuration
-- Open with `nvim --clean -u minimal.lua`

local is_windows = vim.fn.has("win32") == 1
local function join(...)
	local sep = is_windows and "\\" or "/"
	return table.concat({ ... }, sep)
end

local root_tmp = is_windows and os.getenv("TEMP") or "/tmp"
local site_path = join(root_tmp, "nvim", "site")
local pack_path = join(site_path, "pack")
local install_path = join(pack_path, "packer", "start", "packer.nvim")
local compile_path = join(install_path, "plugin", "packer_compiled.lua")
vim.opt.packpath = site_path

local function load_plugins()
	local packer = require("packer")
	local use = packer.use
	packer.reset()
	packer.init({ compile_path = compile_path, package_root = pack_path })

	use("wbthomason/packer.nvim")
	use({ "catppuccin/nvim", as = "catppuccin" })
	-- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
	use({
		"nvim-treesitter/nvim-treesitter",
		-- run = ":TSUpdate",
	})

	packer.install()
end

_G.load_config = function()
	-- ADD INIT.LUA SETTINGS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
	vim.g.catppuccin_flavour = "mocha"
	require("catppuccin").setup({
		transparent_background = false,
		integrations = {
			telescope = true,
		},
		custom_highlights = {
			WhichKeyGroup = { fg = "#FAB387" },
			WhichKeySeparator = { fg = "#cdd6f4" },
		},
	})

	local status_ok, treesitter = pcall(require, "nvim-treesitter")
	if not status_ok then
		return
	end

	local status_ok1, configs = pcall(require, "nvim-treesitter.configs")
	if not status_ok1 then
		return
	end

	configs.setup({
		ensure_installed = { "lua", "markdown", "markdown_inline", "bash", "python" }, -- put the language you want in this array
		-- ensure_installed = "all",
		sync_install = false, -- install languages synchronously (only applied to `ensure_installed`)
		ignore_install = { "vim" }, -- List of parsers to ignore installing
		autopairs = {
			enable = true,
		},
		highlight = {
			enable = true, -- false will disable the whole extension
			disable = { "vim" }, -- list of language that will be disabled
			additional_vim_regex_highlighting = true,
		},
		indent = { enable = true, disable = { "python", "css" } },
		context_commentstring = {
			enable = true,
			enable_autocmd = false,
		},
	})

	vim.api.nvim_create_autocmd({ "FileType" }, {
		pattern = { "markdown" },
		callback = function()
			vim.opt_local.wrap = true
			vim.opt_local.spell = true
		end,
	})

	vim.cmd("colorscheme catppuccin")
end

if vim.fn.isdirectory(install_path) == 0 then
	vim.fn.system({ "git", "clone", "--depth=1", "https://github.com/wbthomason/packer.nvim", install_path })
end
load_plugins()
vim.cmd([[autocmd User PackerComplete ++once echo "Ready!" | lua load_config()]])

https://github.com/nvim-treesitter/nvim-treesitter/blob/master/lua/nvim-treesitter/highlight.lua#L185
FileType autocmd call treesitter default highlight groups. Not sure how tokyonight avoided this.

Seem like we can skip treesitter default highlight group using vim.g.skip_ts_default_groups
Will take a look when I am back from work

hey @nullchilly it still not fixed for me
Actual behaviour with minimal config -

also when the autocommand is enable the coloring of code inside codeblocks of markdown file is disabled
with autocommand -

without autocommand-

Did you recompile catppuccin?

Whats the output of :lua print(vim.g.skip_ts_default_groups) ?

Did you recompile catppuccin?

yes

@Rishabh672003 Whats the output of :lua print(vim.g.skip_ts_default_groups) ?

true

@Rishabh672003 Yes I am able to reproduce with :lua vim.opt_local.spell = true which I believe is equivalent to :doautocmd FileType. However after :TSHighlightCapturesUnderCursor I have no idea why is it wrong, perhaps some problem with conceal?

I have no idea for now :<

Apprently there is a @spell highlight group below
If I set :hi @text.uri guifg=NONE the error went away, tokyonight didn't have this issue simply because they didn't set those highlight groups
Maybe it's an upstream issue about :set spell?

I found the problem, you need to turn off additional_vim_regex_highlighting, like this:
	configs.setup({
		ensure_installed = { "lua", "markdown", "markdown_inline", "bash", "python" }, -- put the language you want in this array
		-- ensure_installed = "all",
		sync_install = false, -- install languages synchronously (only applied to `ensure_installed`)
		ignore_install = { "vim" }, -- List of parsers to ignore installing
		autopairs = {
			enable = true,
		},
		highlight = {
			enable = true, -- false will disable the whole extension
			disable = { "vim" }, -- list of language that will be disabled
			-- additional_vim_regex_highlighting = true,
		},
		indent = { enable = true, disable = { "python", "css" } },
		context_commentstring = {
			enable = true,
			enable_autocmd = false,
		},
	})

@nullchilly yeah that fixed it, thank you for your help


Update to 1.19.3 with CreativeInventoryScreenMixin temporarily disabled

The code is updated to ensure compatibility with the game version 1.19.3 with mappings 1.19.3+build.5. Builds should pass and run flawlessly with the game.
The CreativeInventoryScreenMixin is temporarily disabled by me, because it causes a crash upon inventory/chest opening. Currently I have no solution to this, for there is no change between 1.19+build.2 and 1.19.3+build.5 in the modded class itself. Suggestions are welcome.

Seems the crash is caused by a mod conflict on my local client. The code is now ready for review.

Seems the crash is caused by a mod conflict on my local client. The code is now ready for review.

Additional info: the CreativeInventoryScreenMixin has a conflict with InventoryProfilesNext mod. Consider disabling this mixin or re-implement it in other ways to avoid that.

Seems good to me!


Error on Vercel deployment after building the remote cache locally

What version of Turborepo are you using?
1.4.6
What package manager are you using / does the bug impact?
Yarn v1
What operating system are you using?
Windows
Describe the Bug
I built my repository on the local machine with remote caching enabled. When deploying to Vercel it caches succesfully, but it throws this error. This only happens when building on my local machine.

Expected Behavior
It shouldn't throw this error.
To Reproduce
yarn run build on my local machine
deploy through vercel

Okay, this is definitely an issue and we'd love to help you solve it. However, we're going to need a bit more help with reproduction so we can identify where precisely in the stack the problem is coming from.
Would it be possible to create reproduction steps from scratch, starting with npx create-turbo@latest all the way through deploy on Vercel, noting which caches were created where, and sharing the logs?
We're trying to identify where this is breaking down (build container, Next.js, or Turborepo).
You can also reach out to me in Discord and we can pair through the process of creating a reproduction. Let me know!

I couldn't reproduce the error with the turbo examples, the problem looks to me related to turborepo because if I build the app on Vercel without the build cache it would work properly. Also might be related to this too one:
https://github.com/vercel/vercel/discussions/7846 #

If it's Turborepo in particular the issue is that it is caching a Windows-specific output that needs to be identified somehow.
The thing that stands out the most to me is that I saw mixed slashes in the error message. That makes it feel like it's a combination of all three of the systems.￼￼

Closing due to inactivity! If you're still seeing this problem, please open up a fresh issue.


Provide ability to rollback a cargo update

It's possible to a cargo update to fail/be suboptimal, e.g. https://github.com/rust-lang/cargo/issues/2064 or pick up a broken version of package, so it would be nice to be able to reset to a known working state (and then be more precise about the updates). Something like cargo update --reset or cargo update --rollback.
This would presumably have to store a copy of the old Cargo.lock, in /path/to/project/.cargo or with the global database. It would also be mainly focusing on library development, since theoretically all binaries will be version-controlling their Cargo.locks (although I'm sure not all will).
Thoughts?

I've always thought this was basically just git checkout Cargo.lock along the lines of letting VCS take care of this kind of rollback instead of having support in Cargo itself. I can see, however, where this doesn't quite cut it in all situations.

This doesn't work for libraries, since lock files are generally not version controlled there (e.g. one is working on a lib, runs cargo update to pull in some new version, and accidentally gets stuck in a broken state, with no easy way to get back and continue working).

This could also be as simple as rotating the existing Cargo.lock to some type of versioned/dated in-place backup file.  Anything that allows the user to go "oops; mv Cargo.$backup Cargo.lock; profit"

Not if we still want this feature, since with https://github.com/rust-lang/cargo/pull/6371 we have cargo update --dry-run since Rust 1.33. It can also be easily done with an aid from version control systems. I'd rather avoid an extra layer of complexity.
Going to solicit feedback for a while if there are some situations cannot apply aforementioned workarounds. If not, I'll close this as "not planned"

#5221 is about supporting resolving to a specific date which would be one way of resolving the use case in this issue.

btw #8728 is resolved and we now recommend checking in lockfiles

I'm proposing we close this.
With #8278 resolved, the main use case for this issue is resolved.  #6371 addresses more.  We also have #5221 as a potential alternative for reconstructing old lockfiles.

Make sense. Closing.
If you have a reason to keep this open, please comment here.


drivers: ethernet: stm32: Enabling stats for the driver.

The change enables the ethernet driver to save statistics in a structure in the ethernet driver API structure. In addition, the change also attempts to update error statistics based on errors reported in the STM32 ethernet HAL API.
Fixes #53995
Signed-off-by: Chamira Perera<EMAIL_ADDRESS>

@cperera-aud
Hello
I am in charge to test the pull request you propose but I face to a compilation error.
I want to test the modification in a nucleo_F767zi and Nucleo_F429zi board.
I set the CONFIG_ETH_STM32_HAL_API_V2=y
The compilation is ok only for Nucleo_H7xx
The first error is like that for the board Nucleo_F429zi :
modules/hal/stm32/stm32cube/stm32f4xx/drivers/include/stm32f4xx_hal_eth.h:1102:51: error: 'ETH_DMACSR_RWT' undeclared (first use in this function); did you mean 'ETH_DMASR_RWTS'?
do you confirm this compilation issue?

@cperera-aud
Hello I am in charge to test the pull request you propose but I face to a compilation error. I want to test the modification in a nucleo_F767zi and Nucleo_F429zi board. I set the CONFIG_ETH_STM32_HAL_API_V2=y The compilation is ok only for Nucleo_H7xx The first error is like that for the board Nucleo_F429zi :
modules/hal/stm32/stm32cube/stm32f4xx/drivers/include/stm32f4xx_hal_eth.h:1102:51: error: 'ETH_DMACSR_RWT' undeclared (first use in this function); did you mean 'ETH_DMASR_RWTS'?
do you confirm this compilation issue?

Hi @Desvauxm-st,
Thanks for your comment, since you mentioned this, I just did a build for Nucleo_F429zi and did run into the same issue that you faced. When I did a search for for example ETH_DMA_RX_WATCHDOG_TIMEOUT_FLAG I did notice that it was defined for STM32F7 and STM32F4 and the ETH_DMACSR_RWT was referred in their respective header files. So I didn't probe too much as to whether ETH_DMACSR_RWT was defined for STM32F4 and STM32F7. But after doing a bit more analysis it seems like ETH_DMACSR_RWT is only defined for STM32H7.
Given that these bit fields are only for STM32H7 I suppose I'll just conditionally compile it for STM32H7 and update the PR.

Hi @Desvauxm-st,
I've addressed the build issues for nucleo_f767zi and nucleo_f429zi in my latest commit. Feel free to give it a go on your end when you have a chance.

Hi@cperera-aud On my side I tested ( with samples/net/Zperf and samples/net/stats/) your modifications that you propose on the Nucleo_F429zi and Nucleo_F767 boards without encountering any problems

Thank you much appreciated @Desvauxm-st for trying out the latest changes.


feat(LocallyIntegrable): generalize locallyIntegrableOn_iff

Drop a T2Space assumption and assume IsLocallyClosed instead of
IsClosed s ∨ IsOpen s.

Thanks!
bors r+


fixing a bug in which all handler retires executed within the same

transaction
When a handler fails and gets retried each retry should be run in a new
transaction
Closes #81


Add ci_part3

Add 3rd partition to ci_build to reduce the likelihood of appveyor timeout in part2

@dotnet-bot test this please

@dotnet-bot test this please


express-ws crashes if I use it with express-session.

When I run the following code and access to http://localhost:3000/ with Firefox, It crashed.
const express = require('express');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const app = express();
const expressWs = require('express-ws')(app);

app.use(cookieParser());
app.use(session({ secret: 'foo' }));

app.use('/', function(req, res) {
    res.send("<script>new WebSocket('ws://localhost:3000/bar');</script>");
});

app.listen(3000);

express-session deprecated undefined resave option; provide resave option app.js:8:9
express-session deprecated undefined saveUninitialized option; provide saveUninitialized option app.js:8:9
_http_outgoing.js:144
      this.outputSize += this._header.length;
                                     ^

TypeError: Cannot read property 'length' of null
    at ServerResponse._send (_http_outgoing.js:144:38)
    at ServerResponse.write (_http_outgoing.js:536:16)
    at ServerResponse.end (_http_outgoing.js:635:10)
    at writeend (/Users/sunaemon/Dropbox/myapp/node_modules/express-session/index.js:261:22)
    at Immediate.onsave (/Users/sunaemon/Dropbox/myapp/node_modules/express-session/index.js:335:11)
    at runCallback (timers.js:666:20)
    at tryOnImmediate (timers.js:639:5)
    at processImmediate [as _immediateCallback] (timers.js:611:5)

I'm using node v6.10.0 and following packages.
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Is this a bug of express-ws? Or should I send this issue for express-session?
The error message is similar to #46, but I can not determine whether this issue is related to it or not.

The culprit is likely this bit of code:
app.use('/', function(req, res) {
    res.send("<script>new WebSocket('ws://localhost:3000/bar');</script>");
});

Because you're using app.use rather than app.get, it executes that route for every request starting with /, which in effect means it's executed for every request in the entire application, including the 'fake' route that express-ws generates.
Can you try to change app.use to app.get and see if the problem persists? If that change makes the problem go away, then it's probably the same issue that I've been suspecting in #46, and I'd have to look at whether this is fixable. While having a wildcard/site-wide route is usually a mistake, there can also be legitimate reasons for it, so it should really be supported.

Aside: if it turns out that switching app.use to app.get fixes it, this should probably be closed and treated as a duplicate of #64.

I replace app.use with app.get, it works! Thanks.
But it seems that I failed to reproduce same error in my code. Sorry.
The following code emits the same error as my first post.
'use strict';

const express = require('express');
const path = require('path');
const cookieParser = require('cookie-parser');
const session = require('express-session');

const app = express();
const expressWs = require('express-ws')(app);

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');

app.use(cookieParser());
app.use(session({
    secret: 'bar',
    resave: false,
    saveUninitialized: true
}));

app.get('/', function(req, res) {
    res.send('<script>new WebSocket("ws://<IP_ADDRESS>:3000/foo");</script>');
});

// catch 404 and forward to error handler
app.use(function(req, res, next) {
    const err = new Error('Not Found');
    err.status = 404;
    next(err);
});

// error handler
app.use(function(err, req, res, _next) {
//    if (req.ws)    // WE NEED TO IGNORE EXPRESS-WS DUMMY REQUEST
//        return;
    // set locals, only providing error in development
    res.locals.message = err.message;
    res.locals.error = req.app.get('env') === 'development' ? err : {};

    // render the error page
    res.status(err.status || 500);
    res.render('error');
});

module.exports = app;

It seems that the 404 catcher and the error handler, which express4 generates, are the cause of error.
I could get rid of the error by commenting out the following lines:
//    if (req.ws)    // WE NEED TO IGNORE EXPRESS-WS DUMMY REQUEST
//        return;

Since the functions express4 generates leads to invalid implementation, I would be glad if this workaround be written in README.md of this project.

How about adding 404 handler for WebSocket ?
const express = require('express');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const app = express();
const expressWs = require('express-ws')(app);

app.use(cookieParser());
app.use(session({
	secret: 'bar',
	resave: false,
	saveUninitialized: true
}));

app.ws('*', (ws, req) => ws.send('404'));

app.get('/', (req, res) => {
	res.send('<script>new WebSocket("ws://<IP_ADDRESS>:3000/foo");</script>');
});

app.use((req, res, next) => {
	const err = new Error('Not Found');
	err.status = 404;
	next(err);
});

app.use((err, req, res, _next) => res.send('hoge'));

app.listen(3000);

@sunaemon Well, ideally, no such workaround should be necessary in the first place - express-ws just shouldn't interfere with normal operation like that, and this is a bug in express-ws that needs to be fixed. This is definitely a duplicate of #64 though, so let's move over there. (@HenningM: Can you close this one?)
@Kiikurage I'm not sure what problem that's meant to solve?

@joepie91
As you said, I think plugins shouldn't interfere with default operation too, and so, with using my workaround, developers only need to edit their websocket route implementation and need not to edit default app.js code generated by express-generator. of course, as you said, it is better solution to fix express-ws not to be handled by HTTP middlewares, i think.
Btw, if it would be fixed, then how we should handle "Not Found" errors?

@joepie91
I see.
I agree that this issue is duplication of #64, and we should move there.
I'm closing this issue.


Yeelight strips  (YLDD01YL) is not supported

Home Assistant release (hass --version):
0.50.1
Python release (python3 --version):
3.4.2
Component/platform:
Yeelight
Description of problem:
I cannot add my Yeelight Strip to HA since 0.49.0. Today I found that the info page of Yeelight is updated and the strip is supported. The key difference I found is that the model number of strip in the page is YLDD02YL, but mine is YLDD01YL. But sincerely I have no idea about the difference between this two model.
Here is the error log:
2017-07-31 14:16:49 WARNING (Thread-7) [root] Unknown miio device found: ServiceInfo(type='_miio._udp.local.', name='yeelink-light-strip1_miio54692213._miio._udp.local.', address=b'\xc0\xa82\xd5', port=54321, weight=0, priority=0, server='yeelink-light-strip1_miio54692213.local.', properties={b'mac': b'286c072f6ce6', b'epoch': b'1'})
2017-07-31 14:16:52 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/lib/python3.4/asyncio/tasks.py", line 233, in _step
    result = coro.throw(exc)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py", line 381, in async_process_entity
    new_entity, self, update_before_add=update_before_add
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py", line 212, in async_add_entity
    yield from self.hass.async_add_job(entity.update)
  File "/usr/lib/python3.4/asyncio/futures.py", line 388, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.4/asyncio/tasks.py", line 286, in _wakeup
    value = future.result()
  File "/usr/lib/python3.4/asyncio/futures.py", line 277, in result
    raise self._exception
  File "/usr/lib/python3.4/concurrent/futures/thread.py", line 54, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/components/light/yeelight.py", line 258, in update
    self._rgb = self._get_rgb_from_properties()
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/components/light/yeelight.py", line 198, in _get_rgb_from_properties
    return colorsys.hsv_to_rgb(hue, sat, val)
  File "/usr/lib/python3.4/colorsys.py", line 146, in hsv_to_rgb
    i = int(h*6.0) # XXX assume int() truncates!
TypeError: can't multiply sequence by non-int of type 'float'

Personally thinking, the data type of RGB is mess-up?
Expected:
Add support for this model.
Problem-relevant configuration.yaml entries and steps to reproduce:
light:
  - platform: yeelight
    devices:
      <IP_ADDRESS>:
        name: strip
        transition: 1000
        use_music_mode: True
        save_on_change: False

Additional info:
The firmware is updated to the latest version. The developed mode is on. I have tried set "use_music_mode" to True and False, the result is the same.
Thanks a lot.

All things done. After I delete all configuration about yeelight, the device is added into HA automatically. So Model YLDD01YL is supported, I hope someone can add it at info page.


[IoTDB-2661] Add PlanNode visualizer tool

Add a tool to visualize the PlanNode in Box Chart. See the snapshot below

Coverage decreased (-0.1%) to 55.052% when pulling c548820dc69d6bcd61cdb90918ac54b0630f9d81 on xingtanzjr/graph_visitor into 2691ade495513b54f00810c6cdd97c08326293e5 on master.


Dendron Uses Custom NanoID Length?

Please select the area your Bug applys to. (Multiple selections are Possible)

[ ] Onboard. Initial vault setup and import/export pods
[X] Create. Note creation, lookup, snippets and templates
[ ] Retrieve. Backlinks, references, graph view
[ ] Structure. Refactoring, multi-vault and schemas
[X] Publish. Sharing your repo with the world
[ ] Misc (Choose this if your not sure)

Describe the bug
Only noticed it today, but for the past two weeks (since version 0.50) Dendron has been creating sixteen character NanoIDs instead of the normal twenty-one. I assume this is a result of the recorded bug fix: "only generate alphanumeric ids to be compatible with github pages urls".
However, after using  the fixFrontmatter Doctor command, my earlier notes still use twenty-one character NanoIDs.
Is there a command to normalize the Frontmatter throughout a Dendron Vault? Or, is there a setting to return the NanoIDs in the Frontmatter to the standard twenty-one?
Thank you.

Hi! We unfortunately do not have any actions to normalize the IDs right now. However, mixing longer and shorter IDs should function correctly.
Are you experiencing any problems with these IDs? Do you prefer consistent IDs? Please let us know so we can come up with an actionable plan.
For reference, I decided to shorted the IDs after calculating the probability of collisions and finding that there is practically no risk of collisions even with a shorter length.

I have not noticed any problems with the shorter IDs. On my part, it is a uniformity issue. The reason it stuck out to me was because I have been making an effort since Dendron switched from UUIDs to NanoIDs to work through my vault and update the frontmattter in all of my notes.
My real concern is that Dendron now uses "Dendron-specific NanoIDs". Every generator I have come across uses the default twenty-one characters, and I have not seen an option for changing that to sixteen. I realize this is a very small change in the grand scheme of things, but it does seem to go against the mostly ubiquitous format of the rest of Dendron—Markdown, wikilinks, etc.—which is one of the advantages of a plain text note taking system.

I understand your concerns. I think it makes sense to keep the default setting shorter since I think people would prefer shorter IDs, but I can certainly add a configuration option for Note ID length and a Doctor action to regenerate all note IDs. I should be able to get that out within 2 weeks, sorry for the trouble in the meantime.

No trouble at all. Thank you for your time.

Dendron 0.53 now uses 21 character NanoIDs for note ids once again.
You can use the Dendron: Doctor command, and then select the regenerateNoteId action to regenerate all your note ids. Regenerated note ids will be 21 characters long.
Using the Doctor command might display an error message, but it otherwise works successfully. I'll investigate the message, but please feel free to use it right away and just ignore the message.


Jesse: Watch starbuckscaloriecalculator.com

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

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

Approved by Jeff Schaller in Charcoal HQ


repeated Texture behaviour differs on Android and iOS (RoboVM) based on image size

The sample code below generates a 3 by 3 image using the setWrap(Texture.TextureWrap.MirroredRepeat, Texture.TextureWrap.MirroredRepeat) and setRegion functions.
Problem:

On Android, independently of the size of the source image , it works.

On iOS, using RoboVM, the image size mut be a power of two. if the image is not a power of two, the image is shown as black.
public class GameScreen implements Screen {

  MyGdxGame game;
  private Stage stage;

  public GameScreen(MyGdxGame aGame){
      stage = new Stage(new ScreenViewport());
      game = aGame;
      Texture imgTexture = new Texture(Gdx.files.internal("badlogic.jpg"));
      imgTexture.setWrap(Texture.TextureWrap.MirroredRepeat, Texture.TextureWrap.MirroredRepeat);
      TextureRegion imgTextureRegion = new TextureRegion(imgTexture);
      imgTextureRegion.setRegion(0,0,imgTexture.getWidth()*3,imgTexture.getHeight()*3);

      TextureRegionDrawable imgTextureRegionDrawable = new TextureRegionDrawable(imgTextureRegion);
      Image img = new Image();
      img.setDrawable(imgTextureRegionDrawable);
      img.setSize(imgTexture.getWidth()*3,imgTexture.getHeight()*3);
      stage.addActor(img);
  }

  @Override
  public void show() {

  }

  @Override
  public void render(float delta) {
      Gdx.gl.glClearColor(1, 0, 0, 1);
      Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
      stage.act(delta);
      stage.draw();
  }

  @Override
  public void resize(int width, int height) {
      stage.getViewport().update(width, height, true);
  }

  @Override
  public void pause() {

  }

  @Override
  public void resume() {

  }

  @Override
  public void hide() {

  }

  @Override
  public void dispose() {
      stage.dispose();
  }

}

The OpenGL ES 2.0 spec only guarantees support for CLAMP_TO_EDGE on non-power-of-two textures. Any other mode may or may not work depending on the driver and the extensions it supports.
Basically, use POT textures if you want consistent wrapping and/or mipmap support.

I guess, strictly speaking, that this is an issue of the android gpu driver, because the spec says:

Similarly, if the width or height of a texture image are not powers of two and either the GL_TEXTURE_MIN_FILTER is set to one of the functions that requires mipmaps or the GL_TEXTURE_WRAP_S or GL_TEXTURE_WRAP_T is not set to GL_CLAMP_TO_EDGE, then the texture image unit will return (R, G, B, A) = (0, 0, 0, 1).


Emails not fetching

Hello, I'm using a brand new install o Kanboard 1.2.30, on Debian 12 running Apache, PostgreSQL and PHP 7.4
Kanboard its the only thing running on this server, and its installed at /var/www/html/kanboard
All modules appear to be installed correctly, as shown by php -m
[PHP Modules]
calendar Core ctype curl date dom exif FFI fileinfo filter ftp gd gettext hash iconv imap json ldap libxml mbstring openssl pcntl pcre PDO pdo_pgsql pgsql Phar posix readline Reflection session shmop SimpleXML sockets sodium SPL standard sysvmsg sysvsem sysvshm tokenizer xml xmlreader xmlwriter xsl Zend OPcache zip zlib

[Zend Modules]
Zend OPcache

Mailmagik plugin v1.2.2 installed without issues and is configured, the automatic actions are configured as well
When I run /var/www/html/./cli mailmagik:fetchmail it appears to run correctly and finishes without error, apache2 don't show any error
Yet, nothing happens, the emails are not marked as read or deleted depending on config, no tasks are created on the board
I tried with a Microsoft account and a brand new Gmail account with imap activated, and app password set, neither the standard account password or the app password worked
I suspect something happens when Mailmagik tries fetching the emails and fails, but I don't know where are the log files for that operation, where I can find the logs?
Thank you.

Does the Task email feature work?

Does not seem to work, the automatic actions are set but nothing happens

The only task shown is one I created manually as a placeholder

Emails sent as test as seen from gmail

Also, im not sure you parse option, but if you are parsing via subject line, your subject is incorrect

Must be as it is in the readme.
When using the TO: option, see examples below:
to send an email directly to a task<EMAIL_ADDRESS>to send an email to a project for task conversion<EMAIL_ADDRESS>to send an email to a task for comment conversion<EMAIL_ADDRESS>When using the SUBJECT: option, see examples below:
to send an email directly to a task: [Task#1]  should appear at the start of the Subject
to send an email to a project for task conversion: [Project#1]  should appear at the start of the Subject
to send an email to a task for comment conversion: [CommentOnTask#1]  should appear at the start of the Subject
note: the action must be in brackets

The brackets are a must as well, if using Subject as parse.

Ah its working if you set up with the app password instead of the standard account password


Recover better with mismatched braces

Clang recovers very poorly sometimes with mismatched braces. e.g.
void foo() {
  ^

void bar() {
}

One option is to improve clang's own recovery (e.g. using indentation) though this is likely to be hard.
We could also track the region of the file that has been modified since the last compilable version, and inject braces at the end of it.

What is an example symptom of the poor recovery?

Seems to be a duplicate of https://github.com/clangd/clangd/issues/35.