Automate matching between posts slugs and base images folders

This helps avoiding a mess in the base images folder

I'm not sure that I quite understand what this is intended to do. From what I gather, this is designed to allow your image paths to contain portions of your post's slug, correct me if I'm wrong. While I prefer to just dump all of my images into a single folder, I do see how this could be useful.
I currently see two issues with this as it currently stands.

It doesn't account for images contained within no post pages.

When I tried this on my site, I simply got a Liquid Exception: undefined method []' for nil:NilClass in .md`. Most of that is attributable to the lack of error handling for nonexistent files but, this wouldn't point someone towards why they weren't able to use this on a picture tag on a page. Perhaps one way to handle this would be to check whether we are currently processing a page before applying the slug path.

I would prefer this to be a preset level configuration rather than a global configuration.

It makes sense, to me, that different preset could be configured for different slugs. This would allow someone to define one preset that works with posts and contains part of the post's slug and one preset that works for any page.
Thanks for taking the time to send me a pull request, I really appreciate it. If you'd like to put in some more work to get this merged in, I'd be happy to work with you.

I'm not sure that I quite understand what this is intended to do. From what I gather, this is designed to allow your image paths to contain portions of your post's slug, correct me if I'm wrong. While I prefer to just dump all of my images into a single folder, I do see how this could be useful.

That's right. My aim is to ease content management. I really would like to put each markdown file in a folder with it's specific assets. I have hundreds of blog posts written since 2001, and as many images that illustrate them. Having everything in one single assets folder is not a realistic option.
See this tweet.
I want to be able to move a post easily, from drafts to posts for example, or even from one blog to another — yes, I have several… ;-) — so it would be really easier with one single folder.

I currently see two issues with this as it currently stands.

It doesn't account for images contained within no post pages.

True, I have to add this!

When I tried this on my site, I simply got a Liquid Exception: undefined method[]' for nil:NilClass in .md`. Most of that is attributable to the lack of error handling for nonexistent files

I also have to handle nonexistent files, you're right.

but, this wouldn't point someone towards why they weren't able to use this on a picture tag on a page. Perhaps one way to handle this would be to check whether we are currently processing a page before applying the slug path.

Or maybe just add a specific option in the settings, with a different path that wouldn't contain any date.

I would prefer this to be a preset level configuration rather than a global configuration.
It makes sense, to me, that different preset could be configured for different slugs. This would allow someone to define one preset that works with posts and contains part of the post's slug and one preset that works for any page.

You're right, I'll do this.

Thanks for taking the time to send me a pull request, I really appreciate it. If you'd like to put in some more work to get this merged in, I'd be happy to work with you.

Thanks a lot for your valuable feedback, I'll try to push an update to this PR asap!

Thats great to hear. The point that I was making about nonexistent files is that the plugin currently doesn't handle that at all. If you want to also handle that, thats great but it shouldn't be considered a blocker for getting this change in.

Ok, I didn't understand that, great! ;-)

If folders hierarchy is in the preset, don't you think source, output and even markup could be to?

I don't see much of a need for markup. I think its unlikely that we'll ever support anything else. As for source and output, I think that they could be on the presets but I'd like them to default to the globally defined options.

There is no need for this here anymore, there's now the Jekyll Post Files plugin.


fix edit sample metadata modal window

currently the metadata for sample is not saved when using the edit feature of Sample

It works already


fix report data load cache check

[x] Closes #208 .
[x] I am familiar with the contributing guidelines.
[x] Tests added. Yes, and confirmed that execution is correct using debugger.
[x] Updates entries to docs/source/api.rst for API changes.
[x] Adds descriptions to appropriate "what's new" file in docs/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
[x] New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.
[x] Maintainer: Appropriate GitHub Labels and Milestone are assigned to the Pull Request and linked Issue.

I didn't rigorously time things, but based on my memory of the old performance, this has reduced the report generation time from about 30 to 15 seconds for GFS, NAM, HRRR at OASIS from May through Sept.


Refactory/router

Issues associated with this PR
Your PR should present related issues you want to solve.
Solutions
You should show your solutions about the issues in your PR, including the overall solutions, details and the changes. At this time, Chinese is allowed to describe these.
UT result
Unit Test is needed if the code is changed, your unit test should cover boundary cases, corner cases, and some exceptional cases. And you need to show the UT result.
Benchmark
If your code involves the processing of every request, you should give the Benchmark Result.
Code Style

Make sure Goimports has run
Show Golint result

Codecov Report

Merging #1399 (7ce37ce) into master (653c2f3) will increase coverage by 0.12%.
The diff coverage is 79.62%.

@@            Coverage Diff             @@
##           master    #1399      +/-   ##
==========================================
+ Coverage   59.21%   59.34%   +0.12%
==========================================
  Files         339      339
  Lines       27189    27182       -7
==========================================
+ Hits        16101    16131      +30
+ Misses       9295     9259      -36
+ Partials     1793     1792       -1

Impacted Files
Coverage Δ

pkg/router/handler.go
56.52% <56.52%> (ø)

pkg/router/sofa_rule.go
86.66% <90.00%> (+16.66%)
:arrow_up:

pkg/filter/network/proxy/factory.go
25.00% <100.00%> (+6.81%)
:arrow_up:

pkg/proxy/downstream.go
50.27% <100.00%> (+0.27%)
:arrow_up:

pkg/router/factory.go
100.00% <100.00%> (+14.70%)
:arrow_up:

pkg/router/types.go
57.62% <100.00%> (+8.64%)
:arrow_up:

pkg/stream/xprotocol/connpool_multiplex.go
54.11% <0.00%> (-7.06%)
:arrow_down:

pkg/stream/xprotocol/conn.go
35.58% <0.00%> (-1.23%)
:arrow_down:

pkg/network/connection.go
41.20% <0.00%> (ø)

... and 9 more

Continue to review full report at Codecov.

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


GitHub::Repositories::Collaborator create fails

Fails in both contract testing and stack creation. It creates the invitation successfully in the organization, but then immediately fails with AlreadyExists.
Resource handler returned message: "Error: Resource of type 'GitHub::Repositories::Collaborator'
with identifier 'Collab' already exists."
(RequestToken: 1ab35620-a3ea-bcec-6c21-478165ff5286, HandlerErrorCode: AlreadyExists)

Contract test failed as the get() method always returned something for public repositories, this PR fixes this.


ISPN-6897 Remove scala from server/rest module

https://issues.jboss.org/browse/ISPN-6897

Please wait until tests have run to verify no regressions.

Looks good. You need to amend the server/integration/feature-pack/src/main/resources/modules/system/layers/base/org/infinispan/server/rest/main/module.xml file not to import the scala deps

Removed the module.xml lines.

I can rebase when tests pass :)

I ran refactor on the entire module.  Hopefully it should be good now :)

Pushed with some additional minor changes to actually remove the scala modules from the feature pack (and hence from the server itself). Thank Will.


Contribution - 'Secondary' and 'Warning' action buttons

This PR:

Adds a tint and shade mix function - This is more controllable than darken and lighten
Converts existing button to use shade (Therefore a slight change to the hover colour)
Adds a secondary button modifier
Adds a warning button modifier

Secondary
I need to consult with this design regarding WCAG 2.1 non-text contrast. The text and the shadow meet contrast which I believe will be enough (the background of the button does not).

Warning

Related discussion on secondary buttons:
https://github.com/alphagov/govuk-design-system-backlog/issues/154

Looks good @dashouse.
I'd probably aim for the border bottom on the grey button to meet 4.5:1 contrast - so possibly using $govuk-secondary-text-colour. Right now using a picker on the image gives me 3.4:1.

Here is the code for the buttons we use on GOV.UK
https://govuk-publishing-components.herokuapp.com/component-guide/button

Tiny nitpick but I don't think the outlined buttons need to have the thicker bottom border. On Content Publisher, we increased the height of the button so the total height would be the same as the filled version. And then had the same border all the way around.

Hey @soniaturcotte, there was some concern that against our text input style the only signifiers of the button were colour and centred text. This was an attempt to differentiate them a bit further but it's also just a best guess on our part.

@dashouse Do you have a screenshot of how these alternative buttons look alongside text inputs?

@dashouse that seems quite speculative. We haven't not seen this be a problem in any of our research. I would push to start simple and just add other signifiers if it shows as a problem.
The last screenshot on my comment (last comment) in the backlog shows it with a text input @fofr
https://github.com/alphagov/govuk-design-system-backlog/issues/154

The code has been cleaned up to remove anything that didn't go through to the working group review session. Now ready for frontend review.

I think this is ready for review now – top work @dashouse 👍

Dangit, changelog.

Relates to https://github.com/alphagov/govuk-design-system-backlog/issues/154


SAM generic PB-HTGR model

The goal is to use SAM to model a generic Pebble-Bed High Temperature Gas-Cooled Reactor (PB-HTGR):

The model will primarily utilize SAM's PbCoreChannel component to model the pebble bed core of the reactor. This will enable the model to capture the thermal hydraulics behavior of the core in both axial and radial directions.
A steady-state and a transient simulations will be provided as demonstrations.

Closing as addressed by #130


Renaming file with capital/lower case letters

Check for existing issues

[X] Completed

Describe the bug / provide steps to reproduce it
I've noticed for the past few days, If I try to rename a file that is either all lowercase and just have the first letter uppercase or vice-versa, Zed automatically persist on the name it was given initially, be it Uppercase or lowercase. Same goes for folder names.
We should be able to change as needed.
Environment
Zed: v0.112.3 (preview)
OS: macOS 14.0.0
Architecture: aarch64
If applicable, add mockups / screenshots to help explain present your vision of the feature
No response
If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.
If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.
No response

Hey @gldtn ,
This issue appears to be a duplicate of:

https://github.com/zed-industries/community/issues/525

Would you mind upvoting the linked issue with a thumbs up (👍) so that we can keep all the votes in one place? I'll close this one out as a duplicate. If this is a mistake, please reopen this issue with a comment explaining the difference.


literalEscape

I'm having trouble parsing text starting with a backslash.
Specifically, I want to parse the string '+' (one of the Prolog operators). Declaring a rule like:
token = '\+'
didn't work, it didn't match the text.
I suspect the culprit may be in the literalEscape function, specifically in the first replacement.
'+'.replace(/\/g, '\\')  returns  '+'
'\+'.replace(/\/g, '\\')  returns  '\+'
There doesn't seem to be a way to get one backslash.
Weird thing is that it works alright in the online parser.
What to do? Am I overlooking something?

Yes, indeed, I overlooked something.  Sorry, forget about it.


Bugfix: Python client does not resolve relative paths in kubeconfig

Resolving relative paths based on cube config file path.
Fixes #68

Current coverage is 93.98% (diff: 89.47%)

Merging #69 into master will increase coverage by 0.06%

@@             master        #69   diff @@
==========================================
  Files             9          9
  Lines           592        632    +40
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            556        594    +38
- Misses           36         38     +2
  Partials          0          0

Powered by Codecov. Last update 0b6fb4c...192bb56

Replace 'cube' with 'kube' in the commit messages.  Otherwise, LG.

Done. Thanks.


Preferred method for ongoing updates to production environment?

If an export in a production environment is done first, should it prevent database items from being purged when an import of fixtures from a development environment is run? At least on v1.6.14, this does not seem to be the case.
Is there a preferred method of updating a production database with new/different content? After looking into the issue, I found some text in the Wiki that seems to imply the use of fixtures is not recommended after the initial seeding of content. It would be great to add/change content in a development environment via fixtures (and thus track it through Git) instead of solely relying upon the web admin interface in a production environment.

When you say 'Download db dump and load db locally', do you mean export the production CMS database to files?

@jpbullalayao you just do a sql dump. Then load that dump locally and convert it to fixtures.


Reject negative command line quorum values.

High Level Overview of Change
Check for negative values when setting the quorum from the command line
and reject.

Context of Change

Type of Change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (non-breaking change that only restructures code)
[ ] Tests (You added tests for code that already exists, or your new feature included in this PR)
[ ] Documentation Updates
[ ] Release

There's already a test for negative values submitted for them quorum parameter, so it should stop failing.

This is a duplicate, and has already been merged as c5003969dee3fe7fbc1e0a14afab1ccbb8782d82


Scanning multiple targets

this is pretty rad, any idea why the SPM error happens ? I'm traveling but I'll try to play with this over the weekend and get you a review

@krzysztofzablocki looks like SPM does not work well with submodules. I think also fixed ci build issues with CommonCrypto 🎉  but looks like there is a flaky test for watcher

any chance we could get rid of submodule? it feels like we are complicating it, we already use cocoapods for dependency management

Sure, we can. I'd like to use it with CocoaPods too, but this framework does not support it and I don't think that publishing spec for the fork is a good idea.

are they against adding spec to their repo ?

I just created a PR for that https://github.com/tomlokhorst/Xcode.swift/pull/19

Hi, I'm the developer of Xcode.swift and I noticed this issue due the PR.
Based on @ilyapuchka's work, I've added a podspec to the project (as well as Carthage and SPM support).
I intended to rename my project to XcKit, but I ran into a name conflict on CocoaPods. So as of yet I haven't released it to CocoaPods, until I can come up with a good name that isn't already taken. I'm sure Sourcery can appreciate the difficulty of naming a project. ;-)
While I haven't used Sourcery yet, I'm a big fan of code generation in general, so I appreciate this project! If you have feature requests for Xcode.swift to support Sourcery, feel free to open an issue or send a pull request. I'd be happy to help.

Thanks @tomlokhorst ! I actually kind of liked Xcode.swift name =)

For the dependency: I've renamed Xcode.swift to XcodeEdit, and released the CocoaPod.
You can now depend on:
pod 'XcodeEdit', '~> 1.0'
or:
.Package(url: "https://github.com/tomlokhorst/XcodeEdit.git", majorVersion: 1)

@tomlokhorst can you please also rename the project and the Package name to XcodeEdit? Otherwise it creates XcKit module when building with SPM and XcodeEdit for CocoaPods.

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: danger

@ilyapuchka Update the SPM dependency for XcodeEdit to version 1.0.0, instead of 0.4.0.


rustup update fails because of missing directory

I tried running rustup update today and it failed to update rust-std-i686-pc-windows-gnu:
C:\Users\rnestler>rustup update
info: syncing channel updates for 'stable-i686-pc-windows-gnu'
info: downloading component 'rustc'
 36.8 MiB /  36.8 MiB (100 %)   4.2 MiB/s ETA:   0 s
info: downloading component 'rust-std'
 51.5 MiB /  51.5 MiB (100 %)   7.9 MiB/s ETA:   0 s
info: downloading component 'cargo'
  4.1 MiB /   4.1 MiB (100 %) 608.9 KiB/s ETA:   0 s
info: downloading component 'rust-mingw'
  6.8 MiB /   6.8 MiB (100 %)   1.1 MiB/s ETA:   0 s
info: downloading component 'rust-docs'
  6.9 MiB /   6.9 MiB (100 %)   1.3 MiB/s ETA:   0 s
info: rolling back changes
error: failure removing component 'rust-std-i686-pc-windows-gnu', directory does not exist: '"lib/rustlib/i686-pc-windows-gnu/lib/log-f5a209a9.dll"'
info: syncing channel updates for 'stable-x86_64-pc-windows-gnu'
info: downloading component 'rustc'
 36.0 MiB /  36.0 MiB (100 %)   5.4 MiB/s ETA:   0 s
info: downloading component 'rust-std'
 51.0 MiB /  51.0 MiB (100 %)   5.5 MiB/s ETA:   0 s
info: downloading component 'cargo'
info: downloading component 'rust-mingw'
info: downloading component 'rust-docs'
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-mingw'
info: installing component 'rust-docs'
warning: could not delete temp directory: C:\Users\rnestler\.rustup\tmp\3akg3kw0lf844hq0_dir
info: syncing channel updates for 'nightly-i686-pc-windows-gnu'
info: checking for self-updates

  stable-i686-pc-windows-gnu update failed - rustc 1.14.0 (e8a012324 2016-12-16)
      stable-x86_64-pc-windows-gnu updated - rustc 1.15.0 (10893a9a3 2017-01-19)
     nightly-i686-pc-windows-gnu unchanged - (error reading rustc version)

Also for the nightly version an error window pops up:

I could solve it by deleting both nightly-i686-pc-windows-gnu and stable-i686-pc-windows-gnu from %HOME%\.multirust\toolchains.

Thanks for the report @rnestler. I have no idea what's going on here offhand, but I'm sorry your toolchains got hosed.

I've been getting this error consistently for a few months. Usually the toolchain updates just fine, but I'm always getting the error messages.

@rnestler
This looks like an antivirus issue - something is removing the DLLs which rustup installs. This causes it to fail when it tries to update (by first removing the previous version) and also causes nightly to fail to start (missing DLL).
If possible, my personal recommendation would be to only use microsoft security products. If that's not possible, see if you can adjust the settings to allow rustup to work correctly.
@lamarqua That looks like a different problem. Are you installing 64-bit rust on a 32-bit system? It could appear to be working if you have a 32-bit version of rust earlier on your PATH.

Nope, I'm running 64-bits windows 7 pro. I don't even think I've ever had a 32-bits rust version installed on this machine. (A search for rustc.exe on my machine gives none other than the stable / beta / nightly triad installed via rustup.)
I re-ran rustup update after the failure, but this time, after having ran VsDevCmd.bat (which is basically the equivalent of vcvarsall.bat, but for the new Visual Studio 2017 which I've been using):
λ rustup update
info: syncing channel updates for 'stable-x86_64-pc-windows-msvc'
info: downloading component 'rustc'
 28.8 MiB /  28.8 MiB (100 %) 182.4 KiB/s ETA:   0 s
info: downloading component 'rust-std'
 40.0 MiB /  40.0 MiB (100 %) 198.4 KiB/s ETA:   0 s
info: downloading component 'cargo'
  2.7 MiB /   2.7 MiB (100 %) 112.0 KiB/s ETA:   0 s
info: downloading component 'rust-docs'
  7.1 MiB /   7.1 MiB (100 %) 108.8 KiB/s ETA:   0 s
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-docs'
warning: could not delete temp directory: C:\Users\Adrien\.rustup\tmp\czm
l741ao8ic2w1a_dir
info: syncing channel updates for 'beta-x86_64-pc-windows-msvc'
info: syncing channel updates for 'nightly-x86_64-pc-windows-msvc'
info: checking for self-updates

     stable-x86_64-pc-windows-msvc updated - rustc 1.16.0 (30cf806ef 2017
-03-10)
     beta-x86_64-pc-windows-msvc unchanged - rustc 1.17.0-beta.1 (408d49e
60 2017-03-14)
  nightly-x86_64-pc-windows-msvc unchanged - rustc 1.17.0-nightly (0aeb9c
129 2017-03-15)

I didn't get any error message.

@lamarqua Ah yes, rust doesn't automatically detect Visual Studio 2017 yet, so you need to run vcvarsall.bat. This is a rust issue, but I suspect @retep998 is already working on this...
It's surprising that rustc --version (the command rustup runs) crashes though.

Yeah, it's weird, because it doesn't crash when I run it from the command line, even when I don't run vcvarsall.
E:\Home 
λ rustc --version
rustc 1.17.0-nightly (0aeb9c129 2017-03-15)

E:\Home 
λ which cl.exe
which: no cl.exe in (...)

It only ever crashes (showing a MessageBox) when I run rustup update.

I'm closing this (the missing DLL issue) because if, as I suspect, it's caused by a virus scanner deleting DLLs, there is nothing we can really do about it.
@lamarqua If you are still having problems please open a separate issue.

Issue still on:
$ rustup update stable
info: syncing channel updates for 'stable-x86_64-apple-darwin'
info: downloading component 'rustc'
37.8 MiB /  37.8 MiB (100 %)  10.2 MiB/s ETA:   0 s
info: downloading component 'rust-std'
53.8 MiB /  53.8 MiB (100 %)  10.2 MiB/s ETA:   0 s
info: downloading component 'cargo'
3.6 MiB /   3.6 MiB (100 %) 799.6 KiB/s ETA:   0 s
info: downloading component 'rust-docs'
11.4 MiB /  11.4 MiB (100 %)  11.1 MiB/s ETA:   0 s
info: downloading component 'rust-src'
31.9 MiB /  31.9 MiB (100 %)  10.5 MiB/s ETA:   0 s
info: rolling back changes
error: failure removing component 'rust-src', directory does not exist: '"lib/rustlib/src/rust/src/llvm/test/tools/llvm-objdump/X86/Inputs/internal.exe.coff-x86_64"'

Opened new issue on: https://github.com/rust-lang-nursery/rustup.rs/issues/1167


Add discussion to repo

As title states, can we have discussions here?  I would like to share my dashboard, we can bounce ideas off each other this way

Hey @F1DNA great idea! I created a #general discussion channel on our discord which you can join using this link.


EnvironmentSettingsExporter can sometimes export values from one environment into another

When exporting the settings from the settings spreadsheet to XmlPreprocess files, some default values are not taken into account. This leads to wrong data in the XML files used by XmlPreprocess, which is potentially dangerous. Indeed, I noticed that some of my production settings were used in acceptance.
The attached settings file should help demonstrate the issue. The two settings affected are named MailboxUserName and MailboxPassword. After an export, these settings should have the default values applied for acceptance, but they receive the values from the next column (production).
After a first analysis, I would guess it is because Excel, when saving as XML, skips a cell, and marks the next one with an Index attribute, instead of including all cells for the row. Just a guess, however, not validated.
Attachments
KlimCicc.SettingsFileGenerator-bug-stripped.xml
This work item was migrated from CodePlex
CodePlex work item ID: '8385'
Assigned to: 'tfabraham'
Vote count: '2'

[UnknownUser@6/21/2011]

[UnknownUser@6/21/2011]

[UnknownUser@6/21/2011]
Resolved with changeset 59741.

[UnknownUser@6/21/2011]

[tfabraham@6/21/2011]
Thank you for the report.  You're correct, it is because of Excel sometimes leaving out Cell elements within a row in the XML.  I dropped everything to look at this right away, and I believe it is fixed.  Excel seems to always surprise with new twists on the XML structure.  I hope that Excel never writes cells within a row in other than left-to-right order, because that would still fail -- so far haven't seen that happen.
I checked in a new version of EnvironmentSettingsExporter.exe in Framework\DeployTools.  You can grab the new version and simply overwrite the existing copy on your dev machine.  Please let me know if it looks better.

[tfabraham@6/21/2011]
Download from source today, will be fixed in 5.0 RC3 or 5.0 Final, whichever release is next.

[ydie@6/24/2011]
I downloaded the fixed version of EnvironmentSettingsExporter.exe, and indeed the issue seems to be resolved. Thank you for this very quick reaction!

[UnknownUser@2/21/2013]

[UnknownUser@5/16/2013]


Linked list implementation, trait evolution and dropping 0.6 compatibility

Completing work from #16 to make linked lists and fix testing. Addressing remaining issues from #14 hopefully:

[x] new data structure for branches and nodes is a linked list
[x] stop v0.6 and v1.0 hanging and crashing with linked lists
[x] Random tree generation
[x] Get traversal working
[x] Allow evolution of (qualitative and quantitative?) traits along trees
[x] Fix tests
[x] Add deprecated versions of old interface

Hi @richardreeve do you need some help with this?

Yes, I do, thanks! I have some changes not checked in that I need to decide what to do with though. I'm on a flight to Tanzania in 5 minutes, so I'll try to sort it out on the flight, and push anything worth keeping at lunchtime when I get in. If I'm not in touch by tomorrow afternoon, it means I don't have a data connection where I am, so just go ahead :)

Okay @mkborregaard, I've uploaded all of my edits, including finishing some stuff that I hadn't quite completed when I left off. As a result the tests now work, but they demonstrate that the interface is quite unreliable with respect to returning names or objects. That was deliberate in that I wanted the different tree types to accept and return whatever was natural for them so that there wasn't conversion back and forth happening all the time, but I think it still needs some refinement!
There is also some deprecation of old interfaces now done. What remains is the evolution of traits along trees, which I was going to adapt from Claire's code, but I never got hold of it (or had time to do the work). If you have any time to do that it would be great.
And we need to think about how to tidy up any remaining inconsistencies in naming, in accepting and returning different types, and whether there are any more issues that need resolved before we make a proper release...

PS It's failing at the moment because I'm using JuliaStats/Distributions.jl#830 for the random number generator. I need this to be merged for some of Claire's work, since the random number generation is currently not thread safe, but it requires some small changes to the internal API for people implementing new distributions (like the distribution of trees, here).

alright so essentially you'd like me to take this for a test drive?

Sure, yes - that would be really helpful. It definitely still needs rationalising.
Though if you fancy taking on the trait evolution stuff too, I’d be very happy to let you do it - you did discuss it with Moritz before Christmas, so you probably have a clearer idea what would be necessary for that than us!

sorry, eh - life happened

Heh. No problem. It's not like I've had any time either! However, the framework is now in place I think. All of the functions should, by default, return whatever type of object they prefer (whether that is a nodenametype() label as a reference or a nodetype() object of some kind), and be faster using such an object than the other. This is handled by SimpleTraits dispatch based on what Phylo.API._prefernodeobjects() and Phylo.API._prefernodeobjects() returns. However, all functions can also always handle the labels as input instead, and will in that case return labels if the output is a matching type. The code is a mess, but I think it may still be in a sensible enough state to release soon. I'd certainly like to do that.

We will put some statistical procedure online soon. It is implemented just using a lists of vectors and a table of parents and ancestors but it should be translatable.

Ping @jmkloos

Okay, we now have trait evolution - through BrownianTrait, DiscreteTrait (and SymmetricDiscreteTrait for the simplest case where all discrete traits are identical in switch rates). There's no new testing and not much documentation though. Branch lengths can also be unitful (and so in years), but the plotting functions won't work with that yet.
Discrete Trait evolution is done through enums, and continuous traits can also be unitful, though care needs to be made for consistency between units or traits and units of branches (as the former are strictly rates...).

Awesome! What's the issue with units and Plots? Need maybe UnitfulPlots.jl?

I saw that exists, though not much more than that since it's not released yet so we couldn't include it as a dependency. However, it doesn't seem to fix the problem:
julia> using Phylo, Plots, Unitful, Unitful.DefaultSymbols, UnitfulPlots

julia> tree = rand(Nonultrametric(100, 1.0Gs))
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 26, tip 25, tip 29, tip 87, tip 15, ... [94 omitted] ... and tip 58

julia> plot(tree)
ERROR: DimensionError: 0.0 and 0.05016105247898934 Gs are not dimensionally compatible.
Stacktrace:
 [1] +(::Quantity{Float64,NoDims,Unitful.FreeUnits{(),NoDims,nothing}}, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}) at /Users/richardr/.julia/packages/Unitful/W0mMi/src/quantities.jl:86
 [2] +(::Float64, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}) at ./promotion.jl:313
 [3] (::getfield(Phylo, Symbol("#finddepths!#217")){LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}})(::String, ::Float64) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:157
 [4] (::getfield(Phylo, Symbol("#finddepths!#217")){LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}})(::String, ::Float64) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:161
 [5] (::getfield(Phylo, Symbol("#finddepths!#217")){LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}})(::String) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:154
 [6] _findxy(::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:174
 [7] apply_recipe(::Dict{Symbol,Any}, ::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:12
 [8] _process_userrecipes(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/pipeline.jl:83
 [9] _plot!(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:178
 [10] #plot#132(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:57
 [11] plot(::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:51
 [12] top-level scope at none:0

It would also be nice to be able to colour by trait or something now that's a thing, incidentally:
julia> tree = rand(Nonultrametric(100, 1.0))
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 76, tip 1, tip 100, tip 41, tip 32, ... [94 omitted] ... and tip 27

julia> tree = rand(Nonultrametric(10)) # Defaults to mean depth of 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 10 tips, 19 nodes and 18 branches.
Leaf names are tip 7, tip 4, tip 1, tip 2, tip 10, ... [4 omitted] ... and tip 6

julia> rand(BrownianTrait(tree, "Trait"))  # Defaults to mean 0.0, variance 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 10 tips, 19 nodes and 18 branches.
Leaf names are tip 7, tip 4, tip 1, tip 2, tip 10, ... [4 omitted] ... and tip 6

julia> collect(zip(getnodename.(tree, traversal(tree, preorder)), getnodedata.(tree, traversal(tree, preorder), "Trait")))

19-element Array{Tuple{String,Float64},1}:
 ("Node 19", 0.0)
 ("Node 18", -0.4714088133088188)
 ("Node 17", -0.15536455721070286)
 ("Node 16", -0.30692863805524695)
 ("tip 7", -0.5372089034465997)
 ("tip 4", -0.1370897777363448)
 ("Node 12", -0.39299043908335696)
 ("tip 1", 0.07795126185136869)
 ("tip 2", -1.8225783455723439)
 ("Node 15", -0.5949355186595302)
 ("tip 10", -0.3874668429427555)
 ("Node 14", -0.933653947905192)
 ("Node 11", -0.9924435848607539)
 ("tip 5", -0.742523290339783)
 ("tip 8", -1.5137116267945536)
 ("Node 13", -0.8736513426444625)
 ("tip 3", -0.9765361489107882)
 ("tip 9", 0.7811113323142993)
 ("tip 6", 0.009956930766863182)

Incidentally, my first hack to fix this, changing the starting depth in finddepth!() in plot.jl:
    function finddepths!(clade::String,
                         parentdepth::Number = 0.0 *
                         getlength(tree, first(getbranches(tree))))

just generates a different error:
julia> plot(tree)
ERROR: DimensionError:  and Gs are not dimensionally compatible.
Stacktrace:
 [1] #s39#150 at /Users/richardr/.julia/packages/Unitful/W0mMi/src/conversion.jl:64 [inlined]
 [2] #s39#150(::Any, ::Any, ::Any) at ./none:0
 [3] (::Core.GeneratedFunctionStub)(::Any, ::Vararg{Any,N} where N) at ./boot.jl:522
 [4] uconvert(::Unitful.FreeUnits{(),NoDims,nothing}, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}) at /Users/richardr/.julia/packages/Unitful/W0mMi/src/conversion.jl:23
 [5] convert(::Type{Float64}, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}) at /Users/richardr/.julia/packages/Unitful/W0mMi/src/conversion.jl:141
 [6] setindex!(::Dict{String,Float64}, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}, ::String) at ./dict.jl:381
 [7] (::getfield(Phylo, Symbol("#finddepths!#217")){LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}})(::String, ::Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:161
 [8] (::getfield(Phylo, Symbol("#finddepths!#217")){LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}})(::String) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:156
 [9] _findxy(::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:176
 [10] apply_recipe(::Dict{Symbol,Any}, ::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/Documents/git/julia/Phylo/src/plot.jl:12
 [11] _process_userrecipes(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/pipeline.jl:83
 [12] _plot!(::Plots.Plot{Plots.GRBackend}, ::Dict{Symbol,Any}, ::Tuple{LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:178
 [13] #plot#132(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:57
 [14] plot(::LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}}},LinkBranch{OneRoot,String,Dict{String,Any},Quantity{Float64,𝐓,Unitful.FreeUnits{(Gs,),𝐓,nothing}}},Dict{String,Any}}) at /Users/richardr/.julia/packages/Plots/oiirH/src/plot.jl:51
 [15] top-level scope at none:0

And I don't know enough about Plots or UnitfulPlots to go any further, so I just backed out...

marker_z = getnodedata.(tree, "Trait") or sth like that.

Cool! I don't know the syntax, but I tried:
julia> using Phylo, Plots

julia> tree = rand(Nonultrametric(100)) # Defaults to mean depth of 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 21, tip 81, tip 32, tip 12, tip 51, ... [94 omitted] ... and tip 93

julia> rand(BrownianTrait(tree, "Trait"))  # Defaults to starting at 0.0, variance 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 21, tip 81, tip 32, tip 12, tip 51, ... [94 omitted] ... and tip 93

julia> plot(tree, marker_z = getnodedata.(tree, traversal(tree, preorder), "Trait"))

And it seemed to work, but presumably that depends on knowing the order to put the nodes in? Is there some way of specifying the nodes the values refer to?

PS And except that the tips don't seem to get coloured...

Yeah, they have go in in DepthFirst I think - I also mean to add the additional possibility of passing a Dict instead, that would reduce the incidence of errors. Not sure about the tips, would need to revisit my implementation to see that - but that'll have to be next week, as I've got a deadline on a high-profile paper coming up...

Okay, no problem. It's great to be able to do anything tbh!
I'm not sure that allowing just a random series of numbers makes sense though - there is no a priori way of determining what order nodes will appear even inside a specific traversal unless there's a sort, and even a Dict requires some work to generate it. I think it would be much cooler to allow either a label to look up the value using getnodedata() - this could apply to nodes for the blobs or branches for colour / thickness (via getbranchdata()) - or (more general, but less convenient) a function to be passed in. This may turn out to be another PR entirely of course!

I'm beginning to feel like this is done and I should merge it. It has been 5 months... there's still a lot more testing to add, and at the very least some examples, but given how few people use the package anyway (I suspect), I may as well have it on master.

I would love to see an example!

Sorry, I was interrupted. Specifically we have two traits and for each trait a vector of „segments“ detailing trait values between branch times for that trait together with a vector of the parent  of each segment

These are the examples I'm thinking of adding to the README... first a continuous trait:
julia> using Phylo, Plots

julia> tree = rand(Nonultrametric(100)) # Defaults to mean tree depth of 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 21, tip 81, tip 32, tip 12, tip 51, ... [94 omitted] ... and tip 93

julia> rand(BrownianTrait(tree, "Trait"))  # Defaults to starting at 0.0, variance 1.0
LinkTree{OneRoot,String,LinkNode{OneRoot,String,Dict{String,Any},LinkBranch{OneRoot,String,Dict{String,Any},Float64}},LinkBranch{OneRoot,String,Dict{String,Any},Float64},Dict{String,Any}} with 100 tips, 199 nodes and 198 branches.
Leaf names are tip 21, tip 81, tip 32, tip 12, tip 51, ... [94 omitted] ... and tip 93

julia> plot(tree, marker_z = getnodedata.(tree, traversal(tree, postorder), "Trait"))

julia> d = DataFrame(nodename=getnodename.(tree, traversal(tree, preorder)), trait=getnodedata.(tree, traversal(tree, preorder), "Trait"))
199×2 DataFrame
│ Row │ nodename │ trait     │
│     │ String   │ Float64   │
├─────┼──────────┼───────────┤
│ 1   │ Node 199 │ 0.0       │
│ 2   │ Node 198 │ -0.517593 │
│ 3   │ Node 197 │ -0.314101 │
│ 4   │ Node 172 │ -0.391149 │
│ 5   │ Node 164 │ -0.797994 │
⋮
│ 195 │ tip 67   │ -0.21145  │
│ 196 │ Node 125 │ 0.236189  │
│ 197 │ tip 79   │ 0.218236  │
│ 198 │ tip 40   │ 0.745802  │
│ 199 │ tip 81   │ -0.408055 │

Then a discrete trait:
julia> @enum TemperatureTrait lowTempPref midTempPref highTempPref

julia> rand(SymmetricDiscreteTrait(tree, TemperatureTrait, 0.4));

julia> plot(tree, marker_z = Int.(getnodedata.(tree, traversal(tree, postorder), "TemperatureTrait")))

julia> d = DataFrame(nodename=getnodename.(tree, traversal(tree, preorder)), trait=getnodedata.(tree, traversal(tree, preorder), "TemperatureTrait"))
199×2 DataFrame
│ Row │ nodename │ trait        │
│     │ String   │ Temperat…    │
├─────┼──────────┼──────────────┤
│ 1   │ Node 199 │ highTempPref │
│ 2   │ Node 198 │ highTempPref │
│ 3   │ Node 197 │ highTempPref │
│ 4   │ Node 172 │ highTempPref │
│ 5   │ Node 164 │ highTempPref │
⋮
│ 195 │ tip 67   │ lowTempPref  │
│ 196 │ Node 125 │ midTempPref  │
│ 197 │ tip 79   │ midTempPref  │
│ 198 │ tip 40   │ lowTempPref  │
│ 199 │ tip 81   │ highTempPref │

And then some examples with Unitful.

Oh, I see. These are values you already have? If so, you can just stick them in then using setnodedata!(tree, node, trait, value) and setbranchdata!(tree, branch, trait, value) - there have always been (by default) Dicts attached to each node and branch that you can manipulate. Otherwise, maybe I'm not quite understanding what you mean...

Yeah, we have an internal representation the algorithm is working on and would be interested to  translate into and out the phylo.jl representation (and later perhaps work on the internal phylo.jl representation directly.)

Ah, I see. It should be pretty easy to create a type hierarchy that contained whatever your internal representation is directly, though.
However, in the meanwhile if you have segments that can be treated as branches with traits and parents as nodes, do the segments have a child / children too, or are these a huge number of disconnected segments?

BTW I think your plotting examples would work better with line_z rather than marker_z

Thanks - I didn't know about line_z. I've also fixed the problem you have in #23 with travis.

sweet that should be ready then

I'm getting
WARNING: Method definition conn(T<:(Phylo.AbstractTree{Phylo.OneTree, RT, NL, N, B} where B<:Phylo.AbstractBranch{RT, NL} where N<:Phylo.AbstractNode{RT, NL} where NL where RT<:Phylo.Rootedness), B, N) where {T<:(Phylo.AbstractTree{Phylo.OneTree, RT, NL, N, B} where B<:Phylo.AbstractBranch{RT, NL} where N<:Phylo.AbstractNode{RT, NL} where NL where RT<:Phylo.Rootedness), B, N} in module Phylo at /Users/michael/.julia/dev/Phylo/src/Interface.jl:1012 overwritten at /Users/michael/.julia/packages/SimpleTraits/7CF63/src/SimpleTraits.jl:350.
  ** incremental compilation may be fatally broken for this module **

every time I load this

I get the same warning now. I see it seems to be associated with adding in the traits code... I'm not sure what's going on tbh.

Closes #24.

Also closes #19.

Closes #26.


feat: adding testing package to separate go.mod and using within ibc-go

Description
closes: #635

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

The issues are the following:

In order to manage releases of multiple modules within a single repo from what I can tell we would need to change our scheme for how we tag releases. Maybe each tag would be prepended with the module name i.e. testing/v1.0.0 etc. I think we could maybe do more research here and see how other monorepos handle this.
Breaking changes in between tags have the effect of breaking the testing package.  i.e. changing solomachine client types has a downstream effect of breaking the testing package. This creates the scenario where we cannot fix the testing package until we have a tag of ibc-go with the breaking changes that can be imported in the testing package go.mod. Alternatively, we can pin the testing package to the local main branch. However, pinning locally to main means the testing package cannot be imported by external parties. I actually ran into this very issue as we have changes on main that are not part of a tag/release yet which is why the e2e module and the testing module are pinned to the local main branch. In this PR we're importing a version of the new testing module by the commit hash on the open PR itself (otherwise we would have to pin to the local package with a replace statement).

I think it was worthwhile doing a spike on this but I think before we would continue down this path it would be worthwhile to consider how much value this would really add compared to the overhead and potential side effects.

After speaking to @colin-axner we agreed to close this PR for now and revisit it later. Perhaps we can take a look at https://go.dev/doc/tutorial/workspaces and see if this could be of some help here.


Should remove Expired "DST Root CA X3" Root Certificate from the Embedded Certificates?

Let's Encrypt has expired DST Root CA X3 root certificate on September 30, 2021. The repo has the same certificate in the Embedded Certificates directory which is expired as well.
The expired certificate is still getting added to the certificate chain from the GetIssuers method from the CertificationStore.cs!
I was thinking to add condition in the ToPem method in the CertificateChainExtensions.cs file to skip expired certificate!
Is that the best way to remove the Expired Certificate from the Certificate Chain?

Hi @jadiagaurang ,
I am also facing the same issue.
I saw your  SSL Shopper. Looks ike you have resolved the issue.
can you tell us how you solved with Certes ACME agent API services!

Hi @copythattome,
I have updated Extension File called CertificateChainExtensions.cs
I have updated two methods to filter out expired certificate during building certificate chain!

ToPfx()

/// <summary>
/// Converts the certificate to PFX with the key.
/// </summary>
/// <param name="certificateChain">The certificate chain.</param>
/// <param name="certKey">The certificate private key.</param>
/// <returns>The PFX.</returns>
public static PfxBuilder ToPfx(this CertificateChain certificateChain, IKey certKey) {
	var pfx = new PfxBuilder(certificateChain.Certificate.ToDer(), certKey);
	if (certificateChain.Issuers != null) {
		foreach (var issuer in certificateChain.Issuers) {
			var certParser = new X509CertificateParser();
			var cert = certParser.ReadCertificate(issuer.ToDer());

			if (DateTime.Compare(cert.NotAfter, DateTime.Now) > 0) {
				pfx.AddIssuer(issuer.ToDer());
			}
			else {
				// Issuer's Certificate is Expired!
			}
		}
	}

	return pfx;
}

ToPem()

/// <summary>
/// Encodes the full certificate chain in PEM.
/// </summary>
/// <param name="certificateChain">The certificate chain.</param>
/// <param name="certKey">The certificate key.</param>
/// <returns>The encoded certificate chain.</returns>
public static string ToPem(this CertificateChain certificateChain, IKey certKey = null) {
	var certStore = new CertificateStore();
	foreach (var issuer in certificateChain.Issuers) {
		certStore.Add(issuer.ToDer());
	}

	var issuers = certStore.GetIssuers(certificateChain.Certificate.ToDer());

	using (var writer = new StringWriter()) {
		if (certKey != null) {
			writer.WriteLine(certKey.ToPem().TrimEnd());
		}

		writer.WriteLine(certificateChain.Certificate.ToPem().TrimEnd());

		var certParser = new X509CertificateParser();
		var pemWriter = new PemWriter(writer);
		foreach (var issuer in issuers) {
			var cert = certParser.ReadCertificate(issuer);
			if (DateTime.Compare(cert.NotAfter, DateTime.Now) > 0) {
				pemWriter.WriteObject(cert);
			}
			else {
				// Issuer's Certificate is Expired!
			}
		}

		return writer.ToString();
	}
}


Reset repo

Test -
We should reset repo and clear branches from class lecture.

I don't know that I would reset it to nothing, just do some cleanup.


Simplify Media Identification Function

This just makes the code for finding documents a lot easier. the regex patterns and the media type are converted into keypairs, [regex, mediatype] which is then reduced to a single value, which will either be the original filename if there are no matching extensions, or the mediatype. So long as the mediatype does not contain an extension at the end of the string, this system should work far more simply.
This will also allow for easier addition of new extensions to the function, so long as they all follow the same pattern for the regex:
^ = Start of string
.+ = 1 or more characters of any type
. = A literal dot
(a|b|c) = A list of ORed extensions within a capture group '( )'
$ = End of string, so it is certain this is the actual extension of the filename
Won't be hard to add things like Archives, Executables, etc with just a single extra line now.

@liamcardenas assigning this to you to review, but if you don't feel comfortable, let's discuss with @kauffj.
The issue originally started as https://github.com/lbryio/lbry-app/issues/863 but was moved to the daemon: https://github.com/lbryio/lbry/issues/1028.
It looks this PR addresses it on the app level, so I'm inclined to make it work better before a deamon solution is delivered. Also, not sure if we want any changes from: https://github.com/lbryio/lbry-app/pull/1168/files which was closed (something about showing a full content type)

@ProfessorDey can you re-base your PR? We had a large redux change go in yesterday.

@tzarebczan See lbryio/lbry-redux PR# 7 for rebased version with codacy corrections.
Closing this now since this is moved over.


fixed line 21 on index.jsx to say 'Techbyte-Learning' instead of 'bee…

… dev', also added to readme file that specify this is the dev branch

made changes to say techbyte learning instead of beedev since beedev is not going to be the learning platform


This issue in index.js

See here:
https://github.com/keystonejs/keystone/issues/2477#event-597760999

Hi @terenzeyuen thanks for reporting this. How did you stumble upon it? This code hasn't been released yet.

I just realised that the code you referred to is old and has been fixed already.


Flip and rotate with center

Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

What does this PR do?
Fixes # (issue).
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Codecov Report

Merging #101 (d4cb0d6) into master (5302237) will decrease coverage by 0.26%.
The diff coverage is 88.23%.

@@            Coverage Diff             @@
##           master     #101      +/-   ##
==========================================
- Coverage   73.67%   73.40%   -0.27%
==========================================
  Files           8        8
  Lines         604      613       +9
  Branches       86       87       +1
==========================================
+ Hits          445      450       +5
- Misses        135      139       +4
  Partials       24       24

Impacted Files
Coverage Δ

src/volumentations/augmentations/transforms.py
96.02% <77.77%> (-2.63%)
:arrow_down:

src/volumentations/augmentations/functional.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

Codecov Report

Merging #101 (d4cb0d6) into master (5302237) will decrease coverage by 0.26%.
The diff coverage is 88.23%.

@@            Coverage Diff             @@
##           master     #101      +/-   ##
==========================================
- Coverage   73.67%   73.40%   -0.27%
==========================================
  Files           8        8
  Lines         604      613       +9
  Branches       86       87       +1
==========================================
+ Hits          445      450       +5
- Misses        135      139       +4
  Partials       24       24

Impacted Files
Coverage Δ

src/volumentations/augmentations/transforms.py
96.02% <77.77%> (-2.63%)
:arrow_down:

src/volumentations/augmentations/functional.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


kv upgrade discard policy

add checking and updating of discard policy during kv upgrade <bucket>

I upgraded the nats.go dependency in main


Orientation option

Add orientation option,  press to open dialog box, add this four option

portrait, landscape, device and sensor orientation. Set any of this 4, set 1 to be default.

NOTE: REPLACE SUBTITLE FOLDER TO ORIENTATION BUTTON.
PUT SUBTITLE FOLDER TO ( >) INSIDE SETTING CONTAIN OPTION.

This is my current priority and I already started working on it. My idea of possible rotation options is:

System/user rotation
Orientation based on video content (landscape/portrait)
Auto/sensor rotation (skip it if system auto rotation is already enabled?)

I have found out that I will need to possibly rework how the buttons work in the bottom bar as ExoPlayer manages hiding/showing them.

Action for rotate options added in version 0.10. I ended up with only two options: "Video orientation" and "Auto-rotate". I'm not necessarily agains more options but I want to try keeping it minimal.


Screenshot shows "doamin" instead of "domain"

I would send a pull request, but I don't think you want me to change the text to "doamin" 😉 and I don't own Contoso 😅

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

ID: fd6b316b-c12f-6313-fdb3-302a883ca2b7
Version Independent ID: d3fe5d48-d5da-c97e-e8d8-4edb2f64e284
Content: Tutorial: Creating an Azure child DNS zones - Azure DNS
Content Source: articles/dns/tutorial-public-dns-zones-child.md
Service: dns
GitHub Login: @jonbeck
Microsoft Alias: jonbeck

@Jaykul , Thanks for reaching out. We will investigate and update this thread.

@jonbeck7, I tried submitting a local PR but was unable to capture the right screen as the field is getting populated by existing subscriptions. Please do update the document accordingly from your side. Thank you.

https://github.com/MicrosoftDocs/azure-docs-pr/pull/199551
The PR to fix this is complete and will publish soon.

#please-close


Release of Places 365 Dataset used for the training

Places365 is a dataset that was compiled by researchers at MIT. Please consider downloading it here: http://places2.csail.mit.edu/download.html Note that we used the original version of Places365, which is apparently still available for download but requires you to specifically apply for it and declare what you will be using it for. Cheers!


Google Analytics 4 Plugin

Hey, I just made a Pull Request!

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

I think there's some commits in here that are not related to the PR, think it needs a rebase.

Hey!  Thanks again for submitting this again.  In order to deduplicate efforts, I'm going to close this, as @sramakr is making great, active progress over in #16642.


V1 - Rebranding - Gerrit - Footer is not displayed in Individual and Corporate option pages

Issue1

Navigate to Corporate Contributor Console from gerrit
Login
Observed that footer is not displayed

Issue2

Navigate to Individual Contributor Console from gerrit
Login
Observed that footer is not displayed

@amolsontakke3576 - can we review and close this one?

Verified that the issue is fixed


NodeJS: Allow for path mapper to accept versions with no digit after alpha or beta

Codecov Report

Merging #1545 into master will not change coverage.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master    #1545   +/-   ##
=========================================
  Coverage     87.04%   87.04%
  Complexity     4198     4198
=========================================
  Files           408      408
  Lines         16853    16853
  Branches       1830     1830
=========================================
  Hits          14670    14670
  Misses         1693     1693
  Partials        490      490

Impacted Files
Coverage Δ
Complexity Δ

...oogle/api/codegen/nodejs/NodeJSCodePathMapper.java
62.5% <0%> (ø)
2 <0> (ø)
:arrow_down:

Continue to review full report at Codecov.

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

I believe this duplicates the efforts of #1378


Compiler errors/warnings on EVS_SendEvent() calls on some architectures

One roadblock to turning on strict compiler settings (such as -Werror) with full error checking is that MANY compiler warnings are generated by printf error checking done by gcc.
The full error checking is VERY USEFUL because it verifies that the argument corresponding to each escape code is the right type, e.g. %s has a string, %d has an integer, etc.
The problem is that we are using the OSAL abstractions such as int32 or uint32.  For example, on some systems, printf'ing an int32 needs a "%d" and on other systems it needs a "%ld" depending on whether it was typedef'ed as an int or a long.  So fixing an error on one platform by changing the escape code in the format string only generates an error on a different platform.
In order to fix this so that it builds without warnings on all platforms, any argument that ultimately gets passed to any C library printf() call needs to be cast to the right fundamental C type, not the abstracted type, at the call to the variadic function.
Note this is really only an issue for variable argument functions since for normal functions the correct type is known and the compiler automatically casts it when possible.  But for variadic C library functions this is not possible so we must explicitly ensure that the argument gets converted to the correct type //for the c library//.  GCC is nice enough to implement warnings for this when it is mismatched, we should leverage that.

Imported from trac issue 2.  Created by jphickey on 2014-12-18T22:48:50, last modified: 2019-03-05T14:57:55

Trac comment by jphickey on 2014-12-19 10:10:20:
Pushed [changeset:84e5ff3e] to address this issue
This change enables the GCC printf error checking on EVS_SendEvent(),EVS_SendEventWithAppId() and ES_WriteToSyslog() calls //if// the OSAL defines the OS_PRINTF macro.  The OSAL macro is added in a different commit but the option is #ifdef'ed for compatibility so these changes can be merged separately.
In all cases where the variable argument call is made throughout the code, the arguments are forced (typecast) to the correct fundamental C type as indicated by the corresponding format string.
In addition a couple real security issues/potential buffer overruns are fixed:

There were cases where sprintf() was used with a buffer potentially too short, this was extended and also replaced with snprintf().
There were two cases (in ES and TBL) where a format string was generated "on-the-fly" and directly passed to WriteToSyslog using user-supplied data -- this is dangerous as the user-supplied string might contain a format character such as %s.

The fix branch name is "trac-2-printf-argcheck"

Trac comment by sstrege on 2015-04-03 18:44:29:
Concur with the changes

Trac comment by acudmore on 2015-04-06 13:44:49:
Concur

Trac comment by jphickey on 2015-04-06 11:34:52:
This is ready for review/merge

Trac comment by sduran on 2015-04-06 13:48:09:
recommend accept

Trac comment by jwilmot on 2015-04-06 15:14:23:
Concur

Trac comment by glimes on 2015-04-07 12:43:58:
Tested changeset [changeset:84e5ff3e] as part of the ic-2015-03-10 merge.

Trac comment by glimes on 2015-04-13 15:25:56:
Part of integration candidate 2015-03-10,
committed to cFS CFE Development branch on 2015-04-10
as part of merge [changeset:7d6f6d0].

Trac comment by glimes on 2016-02-25 10:17:32:
these will be fixed in CFE 6.5

Trac comment by jhageman on 2019-03-05 14:57:55:
Milestone renamed


Change iteration range for chain

Hi Rob-
I encountered an issue with the iteration range while trying to concatenate chains from different samplers. CmdStan ignores the the warmup samples, as shown here:
Iterations        = 1:1000
Thinning interval = 1
Chains            = 1
Samples per chain = 1000
internals         = lp__, accept_stat__, stepsize__, treedepth__, n_leapfrog__, divergent__, energy__
parameters        = mu, sigma

Other samplers include the warmup iterations in the rage:
Iterations        = 1001:2000
Thinning interval = 1
Chains            = 1
Samples per chain = 1000
internals         = lp__, accept_stat__, stepsize__, treedepth__, n_leapfrog__, divergent__, energy__
parameters        = mu, sigma

It is not possible to concatenate the chains because the ranges differ. As a work around, I tried to modify the range but encountered the following error:
setfield! immutable struct of type Axis cannot be changed
I was wondering if you would be able to change the iteration range so that it is consistent with the other samplers?

Hi Chris, I'll have a look this afternoon. Should not be too hard. Catching up with being back home in CO!

Hi Chris, should be fixed now. By default it will start with sample num_warmups+1.
For now in master. Unfortunately Travis is refusing to run the docs section. I am not sure how soon I can fix that as this ran perfectly fine up till a few weeks ago.

Much appreciated and welcome back to CO!

Do you use the start keyword for DynamicHMC? i did update DynamicHMCModels.create_mcmcchain but did not update master yet.

No. I couldn't find much information about start. Is it different from start_progress?

Ooh, sorry, I meant when you create an MCMCChains.Chains object there is an optional ‘start=…’ keyword which I now set by default to num_warmups+1 in CmdStan. We probably need something similar for dHMC.

Ok. I understand now. MCMCChains automatically sets the range when the adaption samples are removed.  For example chain = chain[(Nadapt+1):end,:,:] will set the iteration range 1001:2000 in our case. This is why it was conflicting with CmdStan, which was 1:1000 even though adaption samples were removed.

Correct, it does this by basically creating a new Chains object. I don’t understand why (immutable) AxisArrays were selected as the foundation for MCMCChains.Chains objects.

Indeed. It does seem to complicate certain things.

Hi Rob-
I encountered another issue. Hopefully the fix will be simple. The iteration range is correct when save_warmup = false. However, when save_warmup=true, the iterations and samplers per chain are off:
Iterations        = 1001:4000
Thinning interval = 1
Chains            = 1
Samples per chain = 3000
internals         = lp__, accept_stat__, stepsize__, treedepth__, n_leapfrog__, divergent__, energy__
parameters        = mu, sigma

2-element Array{ChainDataFrame,1}

The result above is based on the following configuration:
CmdStanConfig = Stanmodel(name = "CmdStanGaussian",model=CmdStanGaussian,nchains=1,
   Sample(num_samples=2000,num_warmup=1000,adapt=CmdStan.Adapt(delta=0.8),
   save_warmup = true))

I believe the correct output should be:
Iterations        = 1:2000
Thinning interval = 1
Chains            = 1
Samples per chain = 2000
internals         = elapsed, epsilon, eval_num, lf_eps, lf_num, lp
parameters        = sigma, mu

Yip, my mistake ... will fix it.

Can you please try CmdStan master? I'm holding off registering v5.0.5 until I incorporate Tamas' suggestions to get the examples running on Travis.
After the little exchange with Tamas I'm considering to start workin on CmdStan.jl v6.0.0 based on StanDump, StanRun and (possibly) StanSamples.jl.
Another thought I have been mulling over is to switch the next release of StatisticalRethinking over to DynamicHMC and PGFPlotsX. First part (dHMC) is pretty solid, second part (PGFPlotsX) I'm testing out for some other work I need to complete over the next few weeks.

Looks good. Thanks, Rob!
I should be able to add the cross-sampler rhat to MCMCBenchmarks.
I have heard that PGFPlotsX is faster than Plots.jl. I'm guessing it has fewer features?

It's not really the speed that bothers me, neither PyPlot nor GR run reliably anymore on OSX. Both crash Julia.
I hesitate about PGFPlotsX for StatisticalRethinking because MCMCChains is married to Plots.jl and in fact as long as I make sure to use savefig() for each plot in GR (so it does not pop up a GKSTerm) it does work.
Don't know if it has fewer features. It does have easier support for greek/latin characters.

My main gripe is that it is painfully slow. I also had a few problems on OSX, but managed to get it working. What problem are you having?

What happens on my system GR produces the plot, shows it in GKSTerm and then Julia (the REPL) hangs and takes up many CPU cycles. I have to go into the ActivityMonitor and kill the julia process.
This happens not all the time, maybe once in every 2 or 3 plots. Or the GKSTerm crashes and won't show up until I restart Julia.
I am wondering if it might have something to do with memory constraints.
And yes, the first time it is really slow, but after that it's ok.

Bummer. It seems like your problem was different than mine. I use OSX at work and Ubuntu at home and have been surprised that Ubuntu has been less problematic.


No source for the diagnosticInformationMap generation?

We have diagnosticInformationMap.generated.ts and its diagnosticMessages.json source, but there doesn't seem to be any build step that produces the former from the latter, nor does there seem to be any file in the repo for the generator source.
The generator should be checked in, the build process fixed to invoke it, and diagnosticInformationMap.generated.ts should be added to .gitignore and removed from the index.
It's possible that I'm overlooking something here.

It's possible that I'm overlooking something here.

In fact, I was.  (Was grepping only through ./src instead of project-wide.)
The generator is processDiagnosticMessages.ts, invoked by Jakefile.js.

To clarify for others, the command you're interested in is
jake generate-diagnostics


Grammatical error

In the section "MenuBar vs. CommandBar", "then" should be replaced with "than".

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

ID: cd894ab6-9b28-956f-fd00-3d60de336045
Version Independent ID: 5f80b19f-f8a7-4d66-bd46-2ba165f68c0f
Content: Menus and context menus - UWP app developer
Content Source: windows-apps-src/design/controls-and-patterns/menus.md
Product: windows
GitHub Login: @mijacobs
Microsoft Alias: mijacobs

Hi @JsonTextfield, Thanks for letting us know about this. This issue is fixed now.


Bookworm containers for Chromium and Cog

I know the task is already on the roadmap (and maybe in progress), but I open this issue so that it's easier for the customer searching about the status.
In a recent commit the browsers containers have been reverted to bullseye, waiting for bookworm containers release.
Close this issue when bookworm containers for Chromium and Cog will be released.

Bumped in https://github.com/toradex/meta-toradex-torizon/commit/8ca42437dff3ca3c7e5084e3dad87bb57e4af9f8.


Licensing

Hi @bugraoezdemir ,
I just found this repository and it seems super useful! I'm just wondering under which conditions it might be ok to re-use the tools and code. Would you mind adding a license file to the repository? If you're new to licensing, read more.
Thanks!
Best,
Robert

Hi @haesleinhuepf ,
I am happy to hear that you like the repository! I have just added a license file, and would be happy if you go ahead and reuse the code. Thanks a lot for the link about the licensing.
If you have any other recommendations or requests about the code, I would also be happy to hear them.
Thanks a lot!
Best,
Bugra

Awesome, big thanks for the lightspeed response!


Discuss kernel weighting scheme

[ ] Additional function parameters, change functionality or change defaults?
[ ] New estimator in cr.tl.estimators?
[ ] New kernel in cr.tl.kernels?
[ ] New gene trend model in cr.ul.models?
[ ] New plotting function in cr.pl?
[ ] Other?

Could think of using something like WNN to have local weighting of kernels.

We solved this for the RealtimeKernel


Dirty version although there are no uncommited changes

We have the problem that since quite some time the versionname is always dirty. First i thought there are uncommited changes in our CI system, but even when building the apk locally i get the "-dirty" versionname. the git repo is clean see here:

That's what i get after building or executing "gradle --quiet androidGitVersion":

do you any idea why that is happening? Is there something else i can have a look at or provide some other logs?

i saw that you don't do anything special here, that's why i'm confused myself of why that problem occurs:

That does seem odd. I don't know enough about your project to reproduce the issue, but perhaps an update to jgit might help (it's a few versions old now). I'll ping here when it's ready.

0.4.5 is published, please give it a try and see if the problem is fixed. If not, if you could point me at a dummy (or real) project that exhibits this behavior I can try to develop a workaround?

like so often it seems it is a problem with our setup. i tried jgit for windows as described here: https://gist.github.com/oculushut/2413a93f311980f18910
then i was able to see that it detects some uncommited changes. git doesn't. it seems to be an issue with uppercase/lowercase in combination with windows maybe. I'm trying to resolve it now, but obviously this means it is not a problem of this library :)

I agree. https://www.midgetontoes.com/2014/10/17/maven-jgitflow-working-tree-has-uncommitted-changes/ might give you some clues. Thanks for letting us know about it anyway!

BTW: as a workaround you can disable "dirty" detection by customizing the format. e.g.:
format "%tag%%-count%%-commit%%-branch%"


cmd: use t.TempDir instead of ioutil.TempDir on tests

Updates #9594

Close/open to trigger CI

Thank you!
I appreciate how you've been batching these PRs, it makes them easier to review.


getScrollParent, parentNode is in another file

Is your feature request related to a problem? Please describe.
I can't seem to set my main element, which is in another file, as the parentNode using getScrollParent
Describe the solution you'd like
Is it possible to reference a DOM classname or id, to reference the parentnode? Instead of using the ref
getScrollParent={document.getElementsByTagName('main')[0]}

Or is there already a solution for this? Is suppose it always uses the first parent up?

i have same problem?

I solve it getScrollParent={ () => document.getElementById('content') }
it works, nice.
thanks for posting :)


how to re-use Python-Binding generation mechanism?

I read the binding code under modules/python/src2, and I want to apply the mechanism in my own project. Is that possible and any hints on how to?

It is wrong place to ask "How to use Python". Anyway all OpenCV Python-related code and scripts are open and you can use it under BSD licence.
If you just want to use OpenCV python bindings, you should refer to "OpenCV-Python tutorials" here.

@alalek  no, I am not asking about "(how) to use OpenCV python bindings". I am asking how to re-use the binding mechanism. I.E. I want to reuse the gen2.py and hdr_parser.py in MY OWN project.

@alaek  I do not think is issue should be closed now. you have a clear mis-interpretation of my question.

Your question is not related to OpenCV bugs/features, so it is closed.


Z-up for editor

Hello,
Our game uses z-up coordinate system. Is there any way to change it in the editor too?

None


Roll engine 571f47457c0e..921b1ccebb8f (4 commits)

https://github.com/flutter/engine/compare/571f47457c0e...921b1ccebb8f
git log 571f47457c0e..921b1ccebb8f --no-merges --oneline
921b1cceb Roll src/third_party/skia 58fc5d19ad1b..a69b10312977 (3 commits) (flutter/engine#7210)
37bf807a5 Roll src/third_party/skia 17c574a193ad..58fc5d19ad1b (1 commits) (flutter/engine#7209)
0ea994a64 Minor Docs to runtime controller WindowData (flutter/engine#6991)
41dc628d6 Roll src/third_party/skia 340aeda6b3ba..17c574a193ad (8 commits) (flutter/engine#7206)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (liyuqian@google.com), and stop
the roller if necessary.

Auto-roller completed checks. About to merge.


Issues Plotting Local Datasets

After loading the datasets in this repository, I've had difficulty plotting the data. The program aborts immediately after I attempt to plot the data. Here are some of the error codes that I've been getting.
This error was received while attempting to load the heart_disease.csv file.

This error was received while attempting to plot the data fisher_iris.csv.

Additional Info:
Python 3.11.5
macOS Sonoma with M2 Pro chip

Thank you for the issue submission. We are working to debug the application for the Mac platform, we currently have only developed on Windows and Linux platforms. From the stack trace it appears the GlClear call on Mac is throwing an issue on the platform where OpenGL was deprecated, however, maybe we can wrap the context handling for mac to better support this platform which I am looking into.


fixed incorrect command hint in cli error

Super small PR to fix something that might trip someone up. Cheers.

Closed and created a new PR.


TestClasses that don't have 'super' called do not work in gui

The GUI is using attributes it assumes will exist on the test class such as description, long_description and test_skip.
Ensure that a consistent behaviour between CLI and GUI for when test classes aren't initialised correctly.

To clarify, I think that this should be an error, but that it should be an error that is consistent no matter what UI is used.


No functionality with Nucleo F446RE

Hardware description: Nucleo F446RE (https://os.mbed.com/platforms/ST-Nucleo-F446RE/)
RTOS: mbed
Installation type: From source
Version or commit hash: Latest version from master branch

Steps to reproduce the issue

mbed-tools import https://github.com/micro-ROS/micro_ros_mbed.git
mbed-tools deploy
mbed-tools compile -m NUCLEO_F446RE -t GCC_ARM -f --sterm
Run micro-ros-agent with: docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:galactic serial --dev /dev/ttyACM0 -v6

Added a few print statements to diagnose issue:

Expected behavior

Expect to see LED1 blinking every 100ms, indicating functionality
Expect publisher and mbed node to be displayed (via ros2 topic list and ros2 node list) after runinng micro-ros agent

Actual behavior

No LED blinking
Various strange characters in serial output, as shown below

"Finished support init..." message is never reached
micro-ros-agent receives no new messages, and there are no new topics published as well as no node created

Additional information
Have added print statements to find the problem line, and have narrowed it down to the rclc_support_init() call on line 52. Program never seems to move past this function call.

Please try to not open a serial port twice. If you are connecting the micro-ROS client to the agent using a serial port, avoid opening the same serial port on another console.
Also, are those printf being printed in the same serial port that micro-ROS uses?

Even when running without —sterm flag on mbed compile, the issue persists. I have also commented out the printf calls for the time being, until I add another serial port for debugging

Can you share the output of the micro-ROS Agent using the flag -v6?

Doesn't appear to be seeing much...

Earlier, I failed to mention that my mbed environment is running inside a docker container. I was able to solve this issue by flashing the Nucleo using the mbed container, killing the container, then pressing the Reset button on the Nucleo. At this point I could safely run the micro-ros-agent and see the correct output.

sorry to ask here, I am trying to do basically the same thing. @pablogs9
For step 4) mentioned above, Is it possible to run micro-ros-agent natively on 22.04 without docker?
Please provide more details on how to make it work this way,  thank you so much!!
================
e.g.  after the compile and flash step,  do I just do:
Creating the micro-ROS agent
ros2 run micro_ros_setup create_agent_ws.sh
ros2 run micro_ros_setup build_agent.sh
source install/local_setup.bash
Running the micro-ROS app
ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyACM0 -v6
And then all the topics from the stm32 will be able to send/receive rostopic with upstream computer?


Add full reset command to WebSocket bridge

Players should be able to do a full reset from within the headset without going through the GUI first.
This is required for the headless standalone server on the Quest.
There is no delay before initiating the reset like in the main GUI because this is the responsibility of the app calling for the reset

I think you should rather help in the protocol, since that will probably be used in the WebSocketVRBridge as well (we have a thread for this in the development channel called new-network-protocol)

I think you should rather help in the protocol, since that will probably be used in the WebSocketVRBridge as well (we have a thread for this in the development channel called new-network-protocol)

There is enough place for both :P


Job submission ignore the defaults.deployment when clone a job

When clone a job which config contains defaults.deployment.
The defaults.deployment field will be ignore in new submission page
This also happens when user edit a job with deployment in the new submission page.

I think it's not a blocking issue for 0.14 release. Will fix this issue after 0.14 version is published


Add handler for lambda integration

This fixes #137
Probably still requires some documentation at least. I'm also somewhat confused about the seemingly random use of u"strings", I just copied the other event mapping code so I have no idea if they are necessary or correct. I no longer have a working python 2 environment to test in.
This leaves all response mapping to the user. For example:
      response:
        headers:
          Content-Type: "'application/json'"
        template: '$input.path("$.body")'
        statusCodes:
          200:
            pattern: ''
          400:
            pattern: '.*"statusCode": ?400.*'
          500:
            pattern: '.*"statusCode":.*'

An alternative would be to do the simple thing by default, returning the body on 200 and raising RuntimeException("[code] body") otherwise. That would set the status codes automatically, but would not allow more advanced mapping per status code.
Anyway, either works for me. I've been using a version of this without response handling for async: true.

Hi @jvarho,
I cloned the code in your PR and ran the plugin locally by adding it to the .serverless_plugins directory as I really wanted to use this. I have a very straightforward async endpoint with a single path parameter, something like:
  foofunction:
    handler: wsgi_handler.handler
    timeout: 900
    maximumRetryAttempts: 1
    events:
      - http:
          method: any
          path: /foo/{id}/bar
          integration: aws
          async: true
          authorizer: aws_iam
          cors: true
          request:
            passThrough: WHEN_NO_MATCH
            parameters:
              paths:
                id: true

Now, when I deploy this, I get a 500 error from APIGW with the error "Execution failed due to configuration error: Unable to transform request". I'm just using the default request templates serverless provides and the header Content-Type: 'application/json'. Haven't really configured any responses of my own and using the default that got set up for now.
I know this is not related to your code since it's not even reaching the handler you've added but I was wondering if you've faced such an issue or similar because I just can't seem to figure it out. Any suggestions appreciated. Thanks!
Serverless Framework version: 2.34.0 (latest right now)

@a-nadig I think the issue is passThrough + cors. If you are using json you can just leave passThrough undefined.But I'm not sure about cors, since OPTIONS and POST probably have different Content-Type.
However, there's actually a bug with my patch regarding path parameters. They are not passed through, instead only the parameter name is. I'll see if I can fix it.

Fixing paths was quite easy. I also committed my test case, which I really should have shared initially: https://github.com/jvarho/wsgi-lambda-integration

I'll merge this for now, even though some docs would be nice. I don't have time to add it at the moment, but if anyone else does, please submit at PR and I'll merge it.
Regarding the u"" strings, it's a relic from when Lambda was on 2.7. Those days are long passed and we can get rid of Python 2.x support entirely.


[blas][lapack] Reorganize lapack/blas metaport system

This PR reconstructs vcpkg's system for BLAS and LAPACK:

The ports blas and lapack are metaports. Any other port performing find_package(BLAS) or find_package(LAPACK) should depend on these ports.
The ports clapack and lapack-reference are implementations of lapack. I've removed the "embedded blas" option of lapack-reference.
The port openblas is the current implementation of blas
intel-mkl could be used to implement blas, though the user will likely need to provide additional redirecting files (some hypothetical intel-mkl-blas port that provides share/blas/vcpkg-cmake-wrapper.cmake and lib/pkgconfig/blas.pc).
It still makes sense for ports to depend directly upon intel-mkl because it provides additional API surfaces beyond just BLAS.
I've changed lapack to use clapack when targeting Windows with static crt linkage. This unfortunately does mean that x64-windows and x64-windows-static use different LAPACK backends, but it simplifies the ports and removes the feature policy violation from lapack-reference (noblas and cblas conflicted).

See also https://github.com/microsoft/vcpkg/pull/19628 and https://github.com/microsoft/vcpkg/pull/19608.
+@Neumann-A & @cenit to chime in and make sure the above all makes sense.

What is the teams stance on #19413 an simply switch to ifort?

I'm just a random user, but while I do use the (reference) blas and cblas features of the current port, they are so buggy that I'm happy to see lapack get simplified. This looks easy enough to extend for my uses.
For what it's worth, the gfortran support is very convenient.

This PR will also fix #20952.

Also fix issue https://github.com/microsoft/vcpkg/issues/21224.

FYI on this PR trying to pull in ['blas', 'lapack', ...] on x64-windows I get a download error eventually:

Building package openblas[core]:x64-windows...
-- Downloading https://github.com/xianyi/OpenBLAS/archive/904f9a267dddb30e9f187e57231ed160ab2f2704.tar.gz -> xianyi-OpenBLAS-904f9a267dddb30e9f187e57231ed160ab2f2704.tar.gz...
-- Extracting source D:/a/openmeeg/openmeeg/vcpkg/downloads/xianyi-OpenBLAS-904f9a267dddb30e9f187e57231ed160ab2f2704.tar.gz
-- Applying patch uwp.patch
-- Applying patch fix-space-path.patch
-- Applying patch fix-redefinition-function.patch
-- Applying patch fix-uwp-build.patch
-- Applying patch fix-marco-conflict.patch
-- Using source at D:/a/openmeeg/openmeeg/vcpkg/buildtrees/openblas/src/60ab2f2704-82fac8cc89.clean
-- Downloading https://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit.zip -> strawberry-perl-<IP_ADDRESS>-32bit.zip...
-- Found external ninja('1.10.2').
-- Configuring x64-windows
-- Building x64-windows-dbg
-- Building x64-windows-rel
-- Fixing pkgconfig file: D:/a/openmeeg/openmeeg/vcpkg/packages/openblas_x64-windows/lib/pkgconfig/blas.pc
-- Fixing pkgconfig file: D:/a/openmeeg/openmeeg/vcpkg/packages/openblas_x64-windows/lib/pkgconfig/openblas.pc
-- Downloading https://repo.msys2.org/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst;https://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst -> msys-mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst...
-- Downloading https://repo.msys2.org/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst;https://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst -> msys-mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst...
[DEBUG] Feature flag 'binarycaching' unset
[DEBUG] Feature flag 'manifests' = off
[DEBUG] Feature flag 'compilertracking' unset
[DEBUG] Feature flag 'registries' unset
[DEBUG] Feature flag 'versions' unset
[DEBUG] Downloading https://repo.msys2.org/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://mirror.yandex.ru/mirrors/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://mirrors.ustc.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Download failed -- retrying after 1000 ms.
[DEBUG] Download failed -- retrying after 2000 ms.
[DEBUG] Download failed -- retrying after 4000 ms.
[DEBUG] Downloading https://mirror.selfnet.de/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] Downloading https://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst
[DEBUG] D:\a\_work\1\s\src\vcpkg\base\downloads.cpp(656)
Error: Failed to download from mirror set:
https://repo.msys2.org/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://mirror.yandex.ru/mirrors/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://mirrors.ustc.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: WinHttpSendRequest() failed: 12007
https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: WinHttpSendRequest() failed: 12007
https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: WinHttpSendRequest() failed: 12007
https://mirror.bit.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: WinHttpSendRequest() failed: 12007
https://mirror.selfnet.de/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
https://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/i686/mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>06.c9a21571-1-any.pkg.tar.zst: failed: status code 404
[DEBUG] Exiting after %s (%d us)
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:84 (message):
      Failed to download file with error: 1
      If you use a proxy, please check your proxy setting. Possible causes are:
      1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable
         to `https://address:port`. This is not correct, because `https://` prefix
         claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr
         , etc..) is an HTTP proxy. Try setting `http://address:port` to both
         HTTP_PROXY and HTTPS_PROXY instead.
      2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752)
         will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above.
         Workaround is open Windows 10 Settings App, and search for Proxy Configuration page,
         Change `http=address:port;https=address:port` to `address`, and fill the port number.
      3. You proxy's remote server is out of service.
      In future vcpkg releases, if you are using Windows, you no longer need to set
      HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy
      Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49)
      and (https://github.com/microsoft/vcpkg-tool/pull/77)
      Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues
Call Stack (most recent call first):
  scripts/cmake/vcpkg_download_distfile.cmake:292 (z_vcpkg_download_distfile_show_proxy_and_fail)
  scripts/cmake/vcpkg_acquire_msys.cmake:84 (vcpkg_download_distfile)
  scripts/cmake/vcpkg_acquire_msys.cmake:174 (z_vcpkg_acquire_msys_download_package)
  scripts/cmake/vcpkg_find_acquire_program.cmake:547 (vcpkg_acquire_msys)
  scripts/cmake/vcpkg_fixup_pkgconfig.cmake:198 (vcpkg_find_acquire_program)
  ports/openblas/portfile.cmake:[116](https://github.com/openmeeg/openmeeg/runs/6834169172?check_suite_focus=true#step:9:117) (vcpkg_fixup_pkgconfig)
  scripts/ports.cmake:[142](https://github.com/openmeeg/openmeeg/runs/6834169172?check_suite_focus=true#step:9:143) (include)
Error: Building package openblas:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `git pull` and `.\vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  package: openblas[core]:x64-windows -> 0.3.15#1
  vcpkg version: 2021-11-02-af04ebf6274fd6f7a941bff4662b3955c64f6f42
  vcpkg-tool version: 78663abca 2021-11-16 (7 months ago)
Additionally, attach any relevant sections from the log files above.

Closing this PR, since there has been no progress in over a year. Feel free to open a new PR if you are still working on this.


[Feature Request] Add option to move address bar to bottom of screen

Thanks for reaching out, but this is not in our plans for now. Should the situation change in the future we’ll let you know.