Failed to run: "dyld[17278]: Library not loaded: @rpath/libpython3.8.dylib"

Bug Description
When run the example code for using python in rust, the following error is generated:
 cargo run                                                                                (base)
   Compiling cfg-if v1.0.0
   Compiling scopeguard v1.1.0
   Compiling smallvec v1.8.0
   Compiling libc v0.2.112
   Compiling paste v0.1.18
   Compiling indoc v0.3.6
   Compiling instant v0.1.12
   Compiling lock_api v0.4.5
   Compiling parking_lot_core v0.8.5
   Compiling parking_lot v0.11.2
   Compiling pyo3 v0.15.1
   Compiling python_from_rust v0.1.0 (/Users/sichanghe/Documents/Rust/pyo3/python_from_rust)
    Finished dev [unoptimized + debuginfo] target(s) in 2.71s
     Running `target/debug/python_from_rust`
dyld[17278]: Library not loaded: @rpath/libpython3.8.dylib
  Referenced from: /Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/python_from_rust
  Reason: tried: '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/deps/libpython3.8.dylib' (no such file), '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/lib/libpython3.8.dylib' (no such file), '/usr/local/lib/libpython3.8.dylib' (no such file), '/usr/lib/libpython3.8.dylib' (no such file)
fish: Job 1, 'cargo run' terminated by signal SIGABRT (Abort)

It seems like the problem is that the program cannot find libpython3.8.dylib
Steps to Reproduce

create a new project

 cargo new python_from_rust

put the example code into src/main.rs

use pyo3::prelude::*;
use pyo3::types::IntoPyDict;

fn main() -> PyResult<()> {
    Python::with_gil(|py| {
        let sys = py.import("sys")?;
        let version: String = sys.getattr("version")?.extract()?;

        let locals = [("os", py.import("os")?)].into_py_dict(py);
        let code = "os.getenv('USER') or os.getenv('USERNAME') or 'Unknown'";
        let user: String = py.eval(code, None, Some(&locals))?.extract()?;

        println!("Hello {}, I'm Python {}", user, version);
        Ok(())
    })
}

add dependency to Cargo.toml

[dependencies.pyo3]
version = "0.15.1"
features = ["auto-initialize"]

run the program

 cargo run

Backtrace
Initially, I tried inline-python before using PyO3 directly. That program failed to compile for the same reason so I submitted an issue to them Could not compile—error: dlopen: Library not loaded
The inline-python people suggested that I have a problem which PyO3, so I used PyO3 directly to prove that and had this same error.
 Did you use a virtualenv?
It's a Conda Python
 brew install miniconda3
 conda init

No virtualenv.
 which python
/Users/sichanghe/miniconda3/bin/python3

other Python interpreters
I also have a Python installed using brew install python
And a Python that came with macOS by default
But the Conda one is the default one
Additional Info
Some searching suggested specifying python env
So I did these:
 PYTHONPATH=/Users/sichanghe/miniconda3/bin/python cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.03s
     Running `target/debug/python_from_rust`
dyld[17448]: Library not loaded: @rpath/libpython3.8.dylib
  Referenced from: /Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/python_from_rust
  Reason: tried: '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/deps/libpython3.8.dylib' (no such file), '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/lib/libpython3.8.dylib' (no such file), '/usr/local/lib/libpython3.8.dylib' (no such file), '/usr/lib/libpython3.8.dylib' (no such file)
fish: Job 1, 'PYTHONPATH=/Users/sichanghe/min…' terminated by signal SIGABRT (Abort)

 PYTHONPATH=/usr/bin/python3 cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.03s
     Running `target/debug/python_from_rust`
dyld[17469]: Library not loaded: @rpath/libpython3.8.dylib
  Referenced from: /Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/python_from_rust
  Reason: tried: '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/deps/libpython3.8.dylib' (no such file), '/Users/sichanghe/Documents/Rust/pyo3/python_from_rust/target/debug/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/.rustup/toolchains/stable-aarch64-apple-darwin/lib/libpython3.8.dylib' (no such file), '/Users/sichanghe/lib/libpython3.8.dylib' (no such file), '/usr/local/lib/libpython3.8.dylib' (no such file), '/usr/lib/libpython3.8.dylib' (no such file)
fish: Job 1, 'PYTHONPATH=/usr/bin/python3 car…' terminated by signal SIGABRT (Abort)

It doesn't seem to be helpful

On macOS with conda, it's a bit of a mess with rpaths. I think you'll need something like
RUSTFLAGS="-Clink-arg=-undefined -Clink-arg=dynamic_lookup -Clink-arg=-Wl,-rpath,/Users/sichanghe/miniconda3/lib"

At least this is what I had to do in order to be able to build and run test suites for pyo3 and rust-numpy with a conda environment on macOS.
I really, really dislike the fact that you have to specify exact path to conda environment in rustflags as it makes it completely non-portable. It also sounds like it's something that pyo3's build process should do automatically - but maybe I'm missing something important and doing it wrong. (@davidhewitt might know?)

Solved
Solution: rm -rf ~/miniconda3
The more I thought about it, the weirder I found it to use conda.
Its Python version is behind the brew one. It has less packages. I can use pip3 anyway.
After removing conda, everything works as expected.
Thank you for your support, this issue should help people still using conda on macOS.

Thanks @aldanor for the tip!
Afraid I'm not an expert on the macOS flags, having not had to use one myself for many years! My laptop is currently broken, so I'm wondering about one of the new M1 MacBook pros as my next machine. If I get one I'm sure I'll be able to help think about this kind of Mac packaging issue!


Update manage-incidents.md

SOC is Security Operations Center - no reason to make the O lowercase.

Learn Build status updates of commit 63c1923:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/manage-incidents.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@mjcaparas Please merge this PR. Thanks

Learn Build status updates of commit 6e8ea09:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/manage-incidents.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


[META] Visualization import/export

cc @andrewxhill
A semi-regularly requested feature is the ability to import and export visualization definitions, and create visualizations visible in the Editor dashboard via an API. This is not the same as creating a named map through the Maps API because (currently) those will not appear in the dashboard.
This feature comes up often in the context of storing/archiving viz definitions (w/ SQL, cartocss, infowindows, the whole nine yards of a viz.json) locally and then uploading the definition file to re-create it on the same or another user's account. Example workflow:

User creates a visualization with the Editor, and saves and archives the resulting viz.json file locally. (Or, a machine could use a hypothetical API to list the available Editor-created viz.json's and download one/many to store locally.)
Time passes (days/weeks/etc), the original visualization could be deleted or modified in the Editor, etc
To restore a deleted or prior-version visualization, or to share/export a viz definition to a coworker, a user/machine uploads a locally-saved viz.json definition to the same or different CartoDB account than the definition was created on. (This could even be a zipped "package file" with say a CSV table and a viz.json together - all inclusive) Once uploaded, this visualization should be visible in the account's dashboard and editable with the Editor from there, which is currently not the case with named map template.json definitions or the API that supports them.

Andrew H discovered the QGIS plugin uploads visualizations through the non-public/documented API: https://github.com/gkudos/qgis-cartodb/blob/master/cartodb/cartodbapi.py#L164 , so this could even be as simple as making this API public/documented.
Other benefits/analogs:

provides a "workaround" to the 4096 named maps limit by allowing users to store definitions locally, delete, and re-import later
provides some level of manual "version control" for visualizations by keeping a local archive of prior versions/changes
Esri "Layer package" files which include a FileGDB with data and ".lyr" files with styling and symbology. Emailing this to a coworker to use in ArcMap or ArcGIS Online is an "all inclusive" file that depends on nothing else

This is something we've done some development lately. There's even a (limited) tool that you can use to export/import a visualization to JSON:
http://cartodb.readthedocs.org/en/latest/operations/exporting_importing_visualizations.html
It's based on an existing internal backup functionality, and currently it fits the use case of having two "CartoDB environments", one used by developers to make the visualizations, and a "production" one with actual data. With this tools developers can do a visualization, export it to JSON, and importing it at the other editor, which should have tables with the same name and structure.
We've also spoken about exporting data as well, but there's nothing about it in the roadmap yet.

Oh interesting @juanignaciosl , thanks for the link! Though it seems there is no way to run this tool without SSH access to the server? Still, could be something useful to discuss with on-premises clients.

Yes, currently this is only for onpremises and opensource. From a technical point of view making this available through an API would be easy, but you know we must be careful about creating new APIs.
Summoning @javisantana to the discussion.

Feature doc: https://docs.google.com/document/d/13g0n3HZMmQyjOcg_G0-p4zMQf1UzOHT3Hy2IGDHpBNc/edit#

<3!
2016-03-29 12:24 GMT+02:00 Juan Ignacio Sánchez Lara <
<EMAIL_ADDRESS>
Feature doc:
https://docs.google.com/document/d/13g0n3HZMmQyjOcg_G0-p4zMQf1UzOHT3Hy2IGDHpBNc/edit#
—
You are receiving this because you were assigned.
Reply to this email directly or view it on GitHub
https://github.com/CartoDB/cartodb/issues/6365#issuecomment-202823520

--
Sergio Alvarez Leiva

Current status: I've just deployed the metadata import/export (#7114). As long as target user has the needed tables, you can export all metadata from one visualization to JSON with this lines:
v_id = '3bf3a072-013e-11e6-a2e1-04013fc66a01'
u1 = Carto::User.where(username: 'juanignaciosl-ded02').first
require_relative './app/services/carto/visualizations_export_service_2'
exported_string = Carto::VisualizationsExportService2.new.export_visualization_json_string(v_id)

and then import it with
u2 = Carto::User.where(username: 'juanignaciosl-ded-02-admin').first
imported_visualization = Carto::VisualizationsExportService2.new.build_visualization_from_json_export(exported_string)
saved_visualization = Carto::VisualizationsExportPersistenceService.new.save_import(u2, imported_visualization)

This will obviously be automated afterwards but maybe it can be useful right now for you.
Next steps: export/import data (#7057) and add export/import feature to Import API (#7125).

Current status: you can now export the full visualization to a .carto file and import it (even in production).
Export: bundle exec rake cartodb:vizs:export_full_visualization['abf4e96e-11db-11e6-9808-040120e0c101'].
Import: drop the file at the dashboard as usual. The map and the datasets will be imported.

Current status: we'll deploy this as soon as we manage to workaround a resque reloading limitation, probably today, both API and UI 💃
@javisantana , do you think that exposing a public, documented API for this would be interesting? Example requests (POST + 2 polling GETs):
$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports\?api_key\=f5fe77ab2416fd66d4a6032d985b256fd411dd4e -X POST --data '{"visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07"}'

$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports\?api_key\=f5fe77ab2416fd66d4a6032d985b256fd411dd4e -X POST --data '{"visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07"}'
{"id":"b94c26f3-fa16-4f13-b672-45ebbd5a9c95","visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07","user_id":"35b78090-6a49-475a-8470-0a9032272af2","state":"pending","url":null,"created_at":"2016-05-05T09:36:09+00:00","updated_at":"2016-05-05T09:36:09+00:00"}

$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports/b94c26f3-fa16-4f13-b672-45ebbd5a9c95\?api_key\=f5fe77ab2416fd66d4a6032d985b256fd411dd4e
{"id":"b94c26f3-fa16-4f13-b672-45ebbd5a9c95","visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07","user_id":"35b78090-6a49-475a-8470-0a9032272af2","state":"complete","url":"/uploads/6a2b6fbd86e2c750160a/fde71536-bdc5-4530-8a95-8bf3cf9fdc07.carto","created_at":"2016-05-05T09:36:09+00:00","updated_at":"2016-05-05T09:36:13+00:00"}%

Hey about the UI, did you check it with @urbanphes?
2016-05-05 14:40 GMT+02:00 Juan Ignacio Sánchez Lara <
<EMAIL_ADDRESS>
Current status: we'll deploy this as soon as we manage to workaround a
resque reloading limitation, probably today, both API and UI 💃
@javisantana https://github.com/javisantana , do you think that
exposing a public, documented API for this would be interesting? Example
requests (POST + 2 polling GETs):
$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports?api_key=f5fe77ab2416fd66d4a6032d985b256fd411dd4e -X POST --data '{"visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07"}'
$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports?api_key=f5fe77ab2416fd66d4a6032d985b256fd411dd4e -X POST --data '{"visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07"}'
{"id":"b94c26f3-fa16-4f13-b672-45ebbd5a9c95","visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07","user_id":"35b78090-6a49-475a-8470-0a9032272af2","state":"pending","url":null,"created_at":"2016-05-05T09:36:09+00:00","updated_at":"2016-05-05T09:36:09+00:00"}
$ curl -H 'Content-Type: application/json' http://juanignaciosl.localhost.lan:3000/api/v3/visualization_exports/b94c26f3-fa16-4f13-b672-45ebbd5a9c95?api_key=f5fe77ab2416fd66d4a6032d985b256fd411dd4e
{"id":"b94c26f3-fa16-4f13-b672-45ebbd5a9c95","visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07","user_id":"35b78090-6a49-475a-8470-0a9032272af2","state":"complete","url":"/uploads/6a2b6fbd86e2c750160a/fde71536-bdc5-4530-8a95-8bf3cf9fdc07.carto","created_at":"2016-05-05T09:36:09+00:00","updated_at":"2016-05-05T09:36:13+00:00"}%
—
You are receiving this because you were assigned.
Reply to this email directly or view it on GitHub
https://github.com/CartoDB/cartodb/issues/6365#issuecomment-217142645

--
Sergio Alvarez Leiva

Yes, @urbanphes provided the export modal, @saleiva

Why don't try to follow the current api?
like:
curl -X POST http://user.cartodb.com/api/v2/viz/:uuid/export
{"id":"b94c26f3-fa16-4f13-b672-45ebbd5a9c95","visualization_id":"fde71536-bdc5-4530-8a95-8bf3cf9fdc07","user_id":"35b78090-6a49-475a-8470-0a9032272af2","state":"pending","url":null,"created_at":"2016-05-05T09:36:09+00:00","updated_at":"2016-05-05T09:36:09+00:00"}

the status
curl -X POST http://user.cartodb.com/api/v2/viz/:uuid/export/b94c26f3-fa16-4f13-b672-45ebbd5a9c95
{status json

and actually, do we want to have more than one export at a time?

@javisantana I followed the current import API, I thought that focusing on the export itself made sense, it's quite similar. I can change it to be "visualization-centric" instead if you wish.

(and yes, let's document and expose it :es:)

About the "more than one at a time", it's enqueued because exporting a large dataset might take time and we don't want to block unicorn workers because of this.

I'm fine with the current one, that was just a comment. good work guys :crying:

Ok, we'll document this. I promise I try to follow current API 😅

Closing this as the bulk of the task is done and the UI (#7056) will be merged to master in the next hours.

Is this functionality still available? Maybe via https://github.com/CartoDB/cartodb/pull/14745 ?
We are looking for the export/backup from one user/server and import/restore on another user/server functionality, where both locations already have the same datasets (so .carto will not work)

I can't speak to the internal server functionality as that's beyond my own knowledge, but obviously .carto export is still present today.
FWIW, .carto file import should still work if both users have the same datasets, it takes into account naming conflicts.  The .carto file is just a zip file with the .json and geopackages of the datasets inside it.


TypeError occurs while reading APFS volumes

I've seen a TypeError in RecurseReadTree() like below, when I try to analyze a disk image (AFF4) that created with Cellebrite Digital Collector (former MacQuisition).
2021-09-01 16:55:38|MAIN|ERROR|Error while reading APFS volumes
Traceback (most recent call last):
  File "/Users/macforensics/Documents/GitHub/mac_apt/./mac_apt.py", line 307, in FindMacOsPartitionInApfsContainer
    mac_info.ReadApfsVolumes()
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/macinfo.py", line 1079, in ReadApfsVolumes
    apfs_parser.read_volume_records()
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/apfs_reader.py", line 424, in read_volume_records
    self.RecurseReadTree(self.volume.root_block_num, root_block, my_root, False, self.volume.root_tree_oid, 0, 0)
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/apfs_reader.py", line 527, in RecurseReadTree
    self.RecurseReadTree(new_block_num, newblock, my_node, force_fstree, root_oid, oid, xid, debug_parent_list)
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/apfs_reader.py", line 527, in RecurseReadTree
    self.RecurseReadTree(new_block_num, newblock, my_node, force_fstree, root_oid, oid, xid, debug_parent_list)
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/apfs_reader.py", line 527, in RecurseReadTree
    self.RecurseReadTree(new_block_num, newblock, my_node, force_fstree, root_oid, oid, xid, debug_parent_list)
  File "/Users/macforensics/Documents/GitHub/mac_apt/plugins/helpers/apfs_reader.py", line 535, in RecurseReadTree
    location_oid = entry.data + (root_oid if no_blk_hdr_force_subtype_fstree else 0)
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
2021-09-01 16:55:38|MAIN|ERROR|Error while trying to read partitions on disk
Traceback (most recent call last):
  File "/Users/macforensics/Documents/GitHub/mac_apt/./mac_apt.py", line 572, in <module>
    vol_info = pytsk3.Volume_Info(img)
OSError: Volume_Info_Con: (tsk3.c:662) Error opening Volume_Info: Cannot determine partition type

Also, attaching a log file.
Log.20210901-165503.txt

Can you quickly test with the following and tell me if that fixes it?
In plugins/helpers/apfs.py, line 432, add value 7 as below.

Thanks for a quick response, @ydkhatri .
I modified it, and it appears to be working fine.
Although, There is a parser error in the SPOTLIGHT plugin. I will submit a new issue.

Apparently the spotlight issues I was seeing were related to an HFS extent reading bug when reading from HFS archives (ones created by macosac). I've fixed that, please create a new issue if you still have problems with spotlight parsing.


Support SaslHandshakeRequest v0

Fix #1918 #1944

Sorry I used the wrong account and submitted a commit！

Sorry I used the wrong account and submitted a commit！

How does this doesn't fix #1944  Can't set SASL/SSL. Where are we setting the security protocol = SSL


fix(algoliasearch): correct typo in readme

Corrected typo in README for algoliasearch (s/algolisearch/algoliasearch/ in flutter command).

Moving PR to the automation repo (this is a generated rpo)


did change is send after other requests [vscode-languageclient]

In the latest version of vscode-languageclient 8.0.1, somehow textDocument/didChange(onDidChangeContent) is triggered after other requests. One example, didchange is sent after completion, completion cannot return results properly as the language server cannot update with the latest source code.
[Trace - 6:39:27 PM] Sending request 'textDocument/completion - (9)'.
[Trace - 6:39:27 PM] Sending notification 'textDocument/didChange'.
[Trace - 6:39:27 PM] Received response 'textDocument/completion - (9)' in 7ms.
[Trace - 6:39:27 PM] Received notification 'textDocument/publishDiagnostics'.

If I switched back to 7.0.0, it works as expected as below
[Trace - 6:39:27 PM] Sending notification 'textDocument/didChange'.
[Trace - 6:39:27 PM] Sending request 'textDocument/completion - (9)'.
[Trace - 6:39:27 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 6:39:27 PM] Received response 'textDocument/completion - (9)' in 7ms.

Could someone take a look at why didChange is not sent at first in 8.0.1?

Confirmed that version 8.0.2-next.5 works.


zuluDateTimeString should use timeStatus()

in zuluDateTimeString switch the #ifdef NTP to instead check timeStatus() for timeNotSet

fixed in refactor branch. Awaiting testing.


Added property for SEO and metatags

To solve issue #174 (and also #171 #172 #173) I added 3 properties:

PageTitle
PageDescription
PageTags

PageTitle is always Name  - BlogTitle except in the homepage which is BlogTitle - BlogDescription.
PageDescription is always BlogDescription except in the Post detail page where it is Excerpt
PageTags is only in the post details page and is a list of its tags. It's also in the categories and tags list page, but is only the single tag/category for the page is listing content.
Those things are rendered in the HTML page via the newly added Html.MetaTags helper that prints description and tags. Title is still printed directly via the Model.PageTitle property.
I created a MetaTags helper so that in the future it can be extended to print other metatags, like the ones needed for the twitter/fb cards of #170. This also simplifies the code that needs to be written in the views.

@Shazwazza Can you have a look? or shall I go on adding other features on top of this (like the #170 )?

This is great, i'll merge this in now. We'll have to remember to write some notes for upgraders - actually, i'll need to write an upgrade script to ensure that all of the doc types get's the property's they required, this will be part of some dashboard updates i need to do to get a Nuget package made since i need a dashboard to initialize all of the data.

Hi, I added FB and Twitter metatags in the header of master template.
See here: view-source:http://www.volaresereni.it/blog/articoli-curiosità-e-notizie/cosa-è-il-deicing-loperazione-di-scongelamento-dellaeromobile/
`@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = null;
}
@{
var myhomePage = CurrentPage.AncestorsOrSelf(1).First();
var canonicalUrl= String.Empty;
var currentPageID = Model.Content.Id;
string currentUrl = Request.Url.AbsolutePath;
var urlPagina = Umbraco.NiceUrlWithDomain(currentPageID);
var titolo = "";
canonicalUrl= urlPagina;

 if (!string.IsNullOrEmpty(Request.Url.Query)){
			canonicalUrl  += Request.Url.Query;
		}

var metaDescription = CurrentPage.pageName;

if (@CurrentPage.seoMetaDescription != null){
	 metaDescription = @CurrentPage.seoMetaDescription;
} else
{
}

}

<title>@Umbraco.Field("seoTitle", altFieldAlias: "pageName") - @Umbraco.Field("siteName", recursive: true)</title>

<meta name="description" content="@Umbraco.Field("seoMetaDescription", recursive: true)">
<meta name="keywords" content="@Umbraco.Field("seoMetaKeywords", recursive: true)">

<link rel="canonical" href="@canonicalUrl" />
<meta name="author" content="Volare Sereni">
<meta property="fb:app_id" content="1303378069725590" />
<meta property="og:title" content="@Umbraco.Field("seoTitle", altFieldAlias: "pageName")" />
<meta property="og:site_name" content="Volare Sereni" />
<meta property="og:url" content="@Umbraco.NiceUrlWithDomain(currentPageID)" />
<meta property="og:type" content="article" />

@if (@CurrentPage.HasValue("excerpt"))
{

    <meta name="og:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.excerpt), 150)" />
    <meta name="twitter:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.excerpt), 150)" />

    var urlimmagine = "http://www.volaresereni.it" + CurrentPage.postImage.src;
    <meta property="og:image" content="@urlimmagine" />
	<meta name="twitter:image" content="@urlimmagine">
}
else
{

    if (@CurrentPage.seoMetaDescription.Trim() == "")
    {
        <meta name="og:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.BodyText), 150)" />
       	<meta name="twitter:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.BodyText), 150)" />

	}
    else
    {
        <meta name="og:description" content="@metaDescription" />
		<meta name="twitter:description" content="@metaDescription">
    }
    <meta property="og:image" content="http://www.volaresereni.it/images/foto.jpg" />
	<meta name="twitter:image" content="http://www.volaresereni.it/images/foto.jpg">
}

@RenderSection("blogging", required: false)

`
I'll released the Articulate theme.

Thank you
The idea was to add it as part of the core :)
Sent from my iPhone

On 11 Jan 2017, at 22:11, BP<EMAIL_ADDRESS>wrote:
Hi, I added FB and Twitter metatags in the header of master template.
See here: view-source:http://www.volaresereni.it/blog/articoli-curiosità-e-notizie/cosa-è-il-deicing-loperazione-di-scongelamento-dellaeromobile/
`@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = null;
}
@{
var myhomePage = CurrentPage.AncestorsOrSelf(1).First();
var canonicalUrl= String.Empty;
var currentPageID = Model.Content.Id;
string currentUrl = Request.Url.AbsolutePath;
var urlPagina = Umbraco.NiceUrlWithDomain(currentPageID);
var titolo = "";
canonicalUrl= urlPagina;
if (!string.IsNullOrEmpty(Request.Url.Query)){
canonicalUrl  += Request.Url.Query;
}
var metaDescription = CurrentPage.pageName;
if (@CurrentPage.seoMetaDescription != null){
metaDescription = @CurrentPage.seoMetaDescription;
} else
{
}
}
@Umbraco.Field("seoTitle", altFieldAlias: "pageName") - @Umbraco.Field("siteName", recursive: true)
<meta name="description" content="@Umbraco.Field("seoMetaDescription", recursive: true)">
<meta name="keywords" content="@Umbraco.Field("seoMetaKeywords", recursive: true)">

@if (@CurrentPage.HasValue("excerpt"))
{
<meta name="og:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.excerpt), 150)" />
<meta name="twitter:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.excerpt), 150)" />

var urlimmagine = "http://www.volaresereni.it" + CurrentPage.postImage.src;
<meta property="og:image" content="@urlimmagine" />

}
else
{
if (@CurrentPage.seoMetaDescription.Trim() == "")
{
    <meta name="og:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.BodyText), 150)" />
   	<meta name="twitter:description" content="@Umbraco.Truncate(@Umbraco.StripHtml(@CurrentPage.BodyText), 150)" />

}
else
{

}

}
@RenderSection("blogging", required: false)                            		 	            `
I'll released the Articulate theme.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Hi,
Into the blog core or a theme for it? I create the theme in that manner to integrate Articulate into the main web site without repeat code into the header. I create some SEO metatags that Umbraco base don't have. I advise you when I upload the two themes.

In the core as helper, and then obviously in each theme
Sent from my iPhone

On 12 Jan 2017, at 07:42, BP<EMAIL_ADDRESS>wrote:
Hi,
Into the blog core or a theme for it? I create the theme in that manner to integrate Articulate into the main web site without repeat code into the header. I create some SEO metatags that Umbraco base don't have. I advise you when I upload the two themes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I think that the metatags must be injected at Umbraco level to have benefit in all site like I do for volaresereni.it / gruppoargentino.it / refineair.it and other one.
Saluti
ing. Biagio Paruolo

Il giorno 12 gen 2017, alle ore 08:18, Simone Chiaretta<EMAIL_ADDRESS>ha scritto:
In the core as helper, and then obviously in each theme
Sent from my iPhone

On 12 Jan 2017, at 07:42, BP<EMAIL_ADDRESS>wrote:
Hi,
Into the blog core or a theme for it? I create the theme in that manner to integrate Articulate into the main web site without repeat code into the header. I create some SEO metatags that Umbraco base don't have. I advise you when I upload the two themes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Well... depends... many ppl just use articulate and do not have additional pages.
Sent from my iPhone

On 12 Jan 2017, at 08:33, BP<EMAIL_ADDRESS>wrote:
I think that the metatags must be injected at Umbraco level to have benefit in all site like I do for volaresereni.it / gruppoargentino.it / refineair.it and other one.
Saluti
ing. Biagio Paruolo

Il giorno 12 gen 2017, alle ore 08:18, Simone Chiaretta<EMAIL_ADDRESS>ha scritto:
In the core as helper, and then obviously in each theme
Sent from my iPhone

On 12 Jan 2017, at 07:42, BP<EMAIL_ADDRESS>wrote:
Hi,
Into the blog core or a theme for it? I create the theme in that manner to integrate Articulate into the main web site without repeat code into the header. I create some SEO metatags that Umbraco base don't have. I advise you when I upload the two themes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Add requirements in README.md

Fisherman seems to require bc:
$ fisher ls
env: bc: Aucun fichier ou dossier de ce type
rvm             ssh-agent
$ # Basically, it says that `bc` was not found. On Debian Jessie, I use the following command to install it
$ sudo apt-get install bc
# … successful instalation logs …
$ fisher ls
rvm             ssh-agent
$ # ↑ yay, no error 👍 ↑

It may be a good idea to add the requirement installation to README.md for every system (apt-get for Debian, brew for macOS, etc.)
Related issue: https://github.com/fisherman/fisherman/issues/113#issuecomment-187968096

@nagromc
Another idea, let's get rid of bc in favor of awk. Awk is definitely required, so it makes sense.

@nagromc
Another idea, let's get rid of bc in favor of awk. Awk is definitely required, so it would make sense.

Well, do you mean I just need awk to be installed on the system, or it's just a memo for you?
At the moment, I do have awk pre-installed on my system:
$ fisher --version
fisherman version 2.10.0 ~/.config/fish/functions/fisher.fish
$ sudo apt-get remove bc
# … successful uninstalation logs …
$ which awk
/usr/bin/awk
$ fisher ls
env: bc: Aucun fichier ou dossier de ce type
rvm             ssh-agent
$ # oh noes ☹

Actually, I've no idea why bc is needed.

@nagromc Sorry for the confusion. What I am saying is I'll cut a new release removing any incidence of bc with a functional equivalent using awk. This way fisherman is only dependent in awk.

Great! So I let you close this issue whenever you find it appropriate. To me, it is a now a known bug and I know you'll fix it soon.
Thanks.

Hi @nagromc. I'm sorry it has taken me forever to answer to this issue properly. bc is not really used anywhere in fisherman. But I know that fish's native math function uses bc under the hood. Do you still have this problem?

That's okay @jbucaran Don't worry about that 😉
You seem to be right. bc is needed by fish:
$ bc --version
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
$ sudo apt-get remove bc
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  rlwrap xsel
Veuillez utiliser « apt-get autoremove » pour les supprimer.
Les paquets suivants seront ENLEVÉS :
  bc fish fish-common
0 mis à jour, 0 nouvellement installés, 3 à enlever et 0 non mis à jour.
Après cette opération, 8 565 ko d'espace disque seront libérés.
Souhaitez-vous continuer ? [O/n] n
Annulation.
$ # basically, it says that `bc` `fish` and `fish-common` will be removed
$ math "3.14*2"
6.28
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:        8.7
Codename:       jessie

Those are the logs from a "real" Debian Jessie 8.7. I think my mistake comes from using Raspbian where I installed fish manually -- the version I needed not being available on the repo at the moment I stumbled upon the issue.
Thanks for your time.


Made fluentd buffer params configurable

What

Allow to config buffer params with env vars

Why

Fix BufferQueueLimitError

Related:
https://github.com/fluent/fluentd-kubernetes-daemonset/issues/154

Merged.


How to get jmx metrics in prometheus-kubernetes project?

Hi guys! Thank you for your job!
Everything is good, but I just don't know how to get metrics from prometheus jmx exporter agent.
The agent is installed in app container and listen on 9090 port:
spec:
      containers:
      - image: registry/image:version
        imagePullPolicy: Always
        name: app-name
        env:
        - name: JAVA_CUSTOM_OPTS
          value: "-Xms256m -Xmx512m -javaagent:./jmx_prometheus_javaagent.jar=9090:jmx/prom-jmx-agent-config.yml"
        ports:
        - name: app
          containerPort: 8080
        - name: monitoring
          containerPort: 9090

How I can add this new target into prometheus configuration? Usually I just have to edit prometheus.yml config file, but I don't understand how to add it into your configuration.

Hi @andrvin this should work, you have to replace the selector label and the namespace.
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: jmx
  namespace: monitoring
  labels:
    k8s-app: jmx
spec:
  selector:
    matchLabels:
      your_label_key: your_label_value
  endpoints:
  - port: monitoring
    interval: 10s
  namespaceSelector:
    matchNames:
    - your_app_namespace

Save it to a file and kubectl create -f file.yaml

how does the attribute "port" work in prometheus ? i cant use integers there, so what is the convention being used ?

@dberardo-com You can see an example here. The port should match the service port name.


Display issue when tabs number >= 1000

Only three most significant digits visible when tabs number is four digits or more.

I don't think it's possible to fix this, as the font size is set in the browser and only has a certain width.
https://github.com/DaAwesomeP/tab-counter/blob/bb54fb3ec313673a53221bbffd760f8ae92fbaf5/src/options.html#L44

Perhaps the extension can abbreivate "1741" as "1K"?

I am encountering the same issue, and found another related inaccuracy. in the addon preferences for tab-counter it mentions a max of four characters, in my opinion this should be corrected to three since that's what it ends up actually being.


Mismatched icons with menu icons enabled

@baxysquare i didn't add automatic and systematic to the menu icons because, it seems that you have mismatching icons, i unified the sizes when i did the new menu icons, so i could reuse them as much as possible

example for systematic

I will get upscaling the old ones.  I think that's a great step in the right direction.
I hesitate even asking, but how difficult would it be to rename all the XMB function icons with
the new "menu_" prefix?  That would make it easier to understand what goes where and give the themes a better sense of organization.

the renaming would not very hard at all, just a bit tedious, i would need @twinaphex approval to start

I tried making a case for this a few years back on #111 and the "menu_" prefix is the closest we've ever been to filling that request, so it only makes sense to go the distance... with approval of course.


Deadline and reminder

Can I add a feature that also asks the user for an optional deadline for task completion and sends a reminder for completion?
@avinash201199

Hello, I have added the deadline time feature.
Please accept my pull request


Where can be store new variables?

Q
A

Issue Type
Question

Deployer Version
N/A

Local Machine OS
N/A

Remote Machine OS
N/A

Following the example of @oanhnn the best place to to store new variables is:
app.php.tpl
dep.php
servers.yml
Thanks
Oskar

What is you question?

What is the best file to store the new variables?

I do not understand your question.

If I need  to store some variables, for example the token of cron, to be able to run task in Drupal.

@oskarcalvo

app.php.tpl
deploy.php
servers.yml

All files can save your variable. With me,

app.php.tpl => template for config application, this is changed follow framework
deploy.php => script deploy for application, this is changed follow framework (used recipe) and application's spec
servers.yml => save server, stage information, enviroment variable for application. This is changed follow application


ExplicitCollectionElementAccessMethod: Do not report map?.get("foo")

The ExplicitCollectionElementAccessMethod rule seems really useful but it looks like it is also reporting safe map element access:
https://github.com/arturbosch/detekt/blob/master/detekt-rules/src/test/kotlin/io/gitlab/arturbosch/detekt/rules/style/ExplicitCollectionElementAccessMethodSpec.kt#L34
Is it possible to not report the following ?
var map: Map<String, Int>? = null
map?.get("foo")

Or is there an elegant way to fix the issue with the current ?
This fixes it, but it doesn't seems optimal...
map?.let { it["foo"] }

This seems like a false positive. And map?.let { it["foo"] } is worst than map?.get("foo").

But this access isn’t save.
It still returns null for a key which hasn’t been found in the map.

I am not sure I follow.... This rule is not about null safety but about style:
For now, with this rule enabled, we cannot do map?.get("foo") and we need to write map?.let { it["foo"] } which looks like a false positive

Okay, now I understand. I'll reopen it in a second.
@xouabita do you have resources to tackle this?

Yes, I can have a look

Cool thanks for helping out! 🙂


support for async-std runtime

async-tungstenite already supports async-std, and perhaps http request library like surf could be used for async-std support for http jsonrpc.

Sorry for not replying to you for so long, @mneumann has added async-std support in #12.

Sorry for not replying to you for so long, @mneumann has added async-std support in #12.


Sunfury Buildings and goldmines spawn in even when Illidari is picked

Fixed the gold mine part in https://github.com/AzerothWarsLR/WarcraftLegacies/commit/7815eb002da5b62cb00aa58338b5a3569b5fc969.
The buildings part will be done as part of #2725


fix: files sorted in alphabetical order in explorer

Description
Actions in explorer will be sorted alphabetically. The groups(datasources) are sorted alphabetically as well.
Fixes #8531
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Manual

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Test coverage results :test_tube:
:red_circle: Total coverage has decreased
// Code coverage diff between base branch:release and head branch: fix/8531-entity_rename_order

Status
File
% Stmts
% Branch
% Funcs
% Lines

:red_circle:
total
55.01 (0)
36.47 (-0.03)
34.73 (0)
55.4 (-0.01)

:red_circle:
app/client/src/pages/Editor/Explorer/hooks.ts
22.87 (0)
18.6 (-1.23)
12.24 (0)
22.78 (0)

:red_circle:
app/client/src/selectors/entitiesSelector.ts
46.72 (-0.23)
7.8 (-0.73)
25.87 (-0.37)
43.32 (-0.29)

:red_circle:
app/client/src/utils/WorkerUtil.ts
88.98 (-0.78)
70.59 (-1.96)
100 (0)
92.38 (-0.95)

/ok-to-test sha=a8d744c

/ok-to-test sha=a8d744c

/ok-to-test sha=a8d744c

/ok-to-test sha=eaa69fd

/ok-to-test sha=eaa69fd


2.0.0-3 broken in Webpack v4 without babel-loader & export-namespace-from support

 error  in ./node_modules/yaml/browser/index.js

Module parse failed: Unexpected token (1:9)
You may need an appropriate loader to handle this file type.
| export * as default from './dist/index.js'
| export * from './dist/index.js'
|

Any chance of getting more details of the environment & config where you encountered this?

Any chance of getting more details of the environment & config where you encountered this?

VueJs, webpack, launch build:
npm run build:production
if change dependency from 2.0.0-3 to 2.0.0-2 -- everything works fine

You may need to share your entire package.json and Webpack config, as that doesn't really tell me anything about what your build:production script might be doing. I'm also not sure how the Vue.js part might be relevant here.

Closing due to lack of information & repeatability. Please do fill out the template when filing bug reports.

Hi @eemeli, got the same one, my deps:
{
  "name": "ui",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve --port 3000",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "@websanova/vue-auth": "^4.1.0",
    "axios": "^0.21.1",
    "core-js": "^3.6.5",
    "material-design-icons-iconfont": "^6.1.0",
    "stylus": "^0.54.8",
    "stylus-loader": "3",
    "vue": "^2.6.11",
    "vue-axios": "^3.2.2",
    "vue-codemirror": "^4.0.6",
    "vue-ls": "^3.2.2",
    "vue-router": "^3.4.9",
    "vuetify": "^2.2.11",
    "vuex": "^3.6.0",
    "yaml": "^2.0.0-3"
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "babel-eslint": "^10.1.0",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^6.2.2",
    "sass": "^1.19.0",
    "sass-loader": "^8.0.0",
    "vue-cli-plugin-vuetify": "~2.0.9",
    "vue-template-compiler": "^2.6.11",
    "vuetify-loader": "^1.3.0"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

and the build error:

 ERROR  Failed to compile with 1 error                                                                                23:15:30

 error  in ./node_modules/yaml/browser/index.js

Module parse failed: Unexpected token (1:9)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> export * as default from './dist/index.js'
| export * from './dist/index.js'
|

 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/applications/ApplicationDetailsPage.vue?vue&type=script&lang=js& 61:0-24 120:32-36
 @ ./src/components/applications/ApplicationDetailsPage.vue?vue&type=script&lang=js&
 @ ./src/components/applications/ApplicationDetailsPage.vue
 @ ./src/components lazy ^\.\/.*\.vue$ namespace object
 @ ./src/router/index.js
 @ ./src/main.js
 @ multi (webpack)-dev-server/client?http://<IP_ADDRESS>:3000&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js

Not sure what else would be helpful. Didn't do any config apart from importing the package

You may need to share your entire package.json and Webpack config, as that doesn't really tell me anything about what your build:production script might be doing. I'm also not sure how the Vue.js part might be relevant here.

2.0.0-3 update is broken. please take a look what have been changed this time.
i fixed my problem (i have great frontend man in my team), but i'm pretty sure, a lot of people cant handle this.

Thank you @rusenask, with that info I was able to recreate the issue & then trace it down to more specifics.
The problem was surfaced in the 2.0.0-3 prerelease by the change made to solve issue #203, where the main browser endpoint was modified to use export * as default from ... syntax, which has been in the ECMA-262 spec from October 2019. Unfortunately, that syntax is not directly supported by Webpack v4, and so requires e.g. babel-loader to parse properly. It's showing up for you and @dikkini because @vue/cli-service uses Webpack v4 internally, and has its Babel config set to exclude content in node_modules from transpilation. The syntax works perfectly fine in Webpack v5.
As a workaround, adding this to your Vue config should probably apply a minimal fix for the issue.
// vue.config.js
module.exports = {
  configureWebpack(config) {
    config.module.rules.push({
      test: /node_modules\/yaml\/browser\/index\.js$/,
      use: {
        loader: 'babel-loader',
        options: {
          plugins: ['@babel/plugin-proposal-export-namespace-from']
        }
      }
    })
  }
}

Those should are already transitive dependencies of your projects.
Provided that this workaround works for you, I'm going to return to this later to see if it's worth fixing more properly, or if I should do something else about the browser exports. To be clear, this is a prerelease, so I consider it exactly the sort of place where to beta-test features such as this change, for which I can't be certain that all corner cases get covered by my own testing.

Thanks @eemeli! I great to be usefull tester, just dont close topics 👯

@dikkini, you opted not to use the bug report template this repo provides, and did not provide sufficient information for recreating the issue. That's why it was close. I did mention this earlier:

Closing due to lack of information & repeatability. Please do fill out the template when filing bug reports.

For the benefit of future frustrated webpack v4 --> v5 migrants who stumble on this issue, I ended up with the following yaml error upon upgrading to webpack v5:
ERROR in ./node_modules/yaml/browser/dist/index.js 1:0
Module parse failed: 'import' and 'export' may appear only with 'sourceType: module' (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> import { d as defaultTagPrefix, _ as _createForOfIteratorHelper, a as _typeof, b as _createClass, c as _classCallCheck, e as _defineProperty, Y as YAMLSyntaxError, T as Type, f as YAMLWarning, g as YAMLSemanticError, h as _slicedToArray, i as YAMLError, j as _inherits, k as _createSuper } from './PlainValue-ff5147c6.js';
| import { parse as parse$1 } from './parse-cst.js';
| import { b as binaryOptions, a as boolOptions, i as intOptions, n as nullOptions, s as strOptions, N as Node, P as Pair, S as Scalar, c as stringifyString, A as Alias, Y as YAMLSeq, d as YAMLMap, M as Merge, C as Collection, r as resolveNode, e as isEmptyPath, t as toJSON, f as addComment } from './resolveSeq-04825f30.js';

As it turns out, this new version of yaml is currently published as yaml@next, so an npm outdated didn't catch it.   A quick npm install yaml@next seems to have solved the problem in webpack 5.

Oops, misclick. Apologies.

@benrbray The issue you hit isn't really this one, but #208. And that should be fixed for yaml@1 by the v1.10.1 patch release.


fix: broken vite preload when used with cspnonce

Fix a bug since<EMAIL_ADDRESS>whereby Content-Security-Policies errors are thrown when $global.cspNonce is used.

Excellent catch, thanks @vwong!


BazelCASDatabase: put/get

Out of curiosity: Is there a reason that the  let resource = expressions differ between put and get in
BazelCASDatabase? put("foo") followed by get"foo") seems impossible?!?

From my understanding of the Bazel remote API, the put target is indeed supposed to go to a different resource than the get.  My very limited testing with a buildbarn instance running in Docker showed this to work.   Note however, the code is rather untested at this time.

Sorry for the confusion. RE2 indeed defines different paths for put and get:
https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/execution/v2/remote_execution.proto#L210-L236


French translation

Added the missing translations for brightness automations,resolution automations and event logging.
Also fixed a typo in the bottom VRChat status bar "disconnected".

Thanks a lot!


Add new ifdef UV_STATICLIB in UV_EXTERN definition

When compiling the code with UV_STATICLIB definitions
the value of UV_EXTERN will be empty for all platforms
This fix refer to issue
inconsistently between windows and gnu for static lib (#1108)

This fix refer to issue
inconsistently between windows and gnu for static lib (#1108)

Can you explain what exactly this fixes?  "inconsistently between windows and gnu for static lib" - okay, but so what?  Does that actually break anything?

Assuming you are using libuv as part of you lib
and you do not want that the libuv api will be visible out of your lib
because of security reasons
in case you are using it in windows platform if you do not use any definition
the default will be that value of UV_EXTERN will be nothing and the libuv apis will not be exported
But if you are doing the same for any __GNUC__ >= 4 platform
The value of UV_EXTERN will always be __attribute__((visibility("default")))
and you do not the ability to hide the libuv api

Okay, I believe I understand but I think you need to fix this in your build process, not in libuv.
Libuv is normally compiled with -fvisibility=hidden, that's why API functions are marked with default visibility, otherwise they wouldn't be visible to the host application.
It sounds like your application or library is re-exporting libuv's symbols wholesale but that's something you can stop (assuming GNU ld) by linking with -Wl,--exclude-libs,libuv.a.

@ayuval You didn't follow up so I'm going to assume it's fixed on your end.  I'll go ahead and close the pull request.

You gave me a nice solution that i can live with but still i think that it is a good idea to add the UV_STATICLIB
I think that set of prepprocessor definitions need to give the option to hide the symbols when building the libuv
It is not so elegant to export the symbols and hide them again in by using linker flags
i add here part of the curl.h header from where i took the idea to use this UV_STATICLIB definition
#ifdef CURL_STATICLIB
#  define CURL_EXTERN
#elif defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__)
#  if defined(BUILDING_LIBCURL)
#    define CURL_EXTERN  __declspec(dllexport)
#  else
#    define CURL_EXTERN  __declspec(dllimport)
#  endif
#elif defined(BUILDING_LIBCURL) && defined(CURL_HIDDEN_SYMBOLS)
#  define CURL_EXTERN CURL_EXTERN_SYMBOL
#else
#  define CURL_EXTERN
#endif

I'm not mordicus against.  If more people ask for it, I'll land this.

+1


Bug in Design

There is a small bug in your design. You assume that the VAT is static on a product. However it is not. It depends on the location of the customer.
When I add a product, and then I supply my customer data the VAT could change based on the customers country

vat attribute used only for example. This example shows how get sum value for specific attribute in the model.


Remove C++ content from tensorflow/c/c_api_macros.h

This PR tries to remove C++ conent from tensorflow/c/c_api_macros.h
so that it is possible to include this file from an external plugin
without depending on tensorflow's C++ headers (tensorflow/core/platform/status.h).
The reason for this move is that for external plugins (e.g., file systems plugins)
that utilize C API, it cannot include status.h as otherwise the whole tensorflow's
C++ library will be a dependency. This defeat the purpose of C APi modular plugin.
This PR place C++ content to tensorflow/core/platform/status.h instead so that
everything will still be combined both for C external plugins and C++ plugins.
(Note the C++ inclusion was added in PR #51647.)
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

Hmm, can you post what the error message is?
These lines got added recently via #51647 (manual import + fix) as Intel needed this for the 2.7 release.
CC @penpornk


Removed the Version from the webjars-locator-core, dependency

Ticket #1019

Added Kobey as a reviewer, our emerging standard practice for this branch.

Had ran Unit test on the ui and api side. There was no error or failures reported from the test.


Shiren the Wanderer: The Tower of Fortune and the Dice of Fate [PCSE00845]

App summary

App name: Shiren the Wanderer: The Tower of Fortune and the Dice of Fate
App serial: PCSE00845
App version: 1.00

Vita3K summary

Version: v0.1.5
Build number: 2683
Commit hash: https://github.com/vita3k/vita3k/commit/b3a44b5
CPU backend: Dynarmic

Test environment summary

Tested by: gymzatan
OS: Windows 11
CPU: AMD Ryzen 7 5800H
GPU: AMD Radeon(TM) Graphics
RAM: 16 GB

Issues
Game does not boot.
Screenshots

Log
vita3k.log
Recommended labels

Nothing

Vita3K v0.1.5 2714-5cb80b24
if you choose auto and manual and then libhttp
it goes as far as the title screen
it says press start button but it doesnt detect it
so it then loops through the intro and title screen
vita3k.log

as of https://github.com/Vita3K/Vita3K/commit/22ea4f03d2c8c516159596b3b42c097406b7fe95, the inputs are working as i was able to get past the start screen but it's now stuck at wanting a save.

vita3k.log


Adding new page in 'Main articles'

There are changes to resolve #70

Added 'Main articles' header into menu to keep interface consistent
with other categories
If category name for page being saved is 'Main articles' then we send
empty category name in request to API
If backend API receives empty category name then it creates or
updates file in root of content directory

@yaruson  I just tried your pull request and it didn't work. But maybe I missed something.
Here is what I tried, using your pull request:
cd Raneto
rm -rf content
mkdir content
echo "bla" > content/foo.md

Then I started the app with npm start.
After selecting the file foo.md I was expecting to be able to create a new file using the web interface.
But there is no plus button next to the Main article entry on the left.
Any pointers?

@draptik thank you for your efforts on trying out this pull request!
Could you check if allow_editing is set to true in example/config.default.js, please?

@yaruson My mistake: Yes, your pull request works as expected after settings allow_editing to true. (I missed the new default for allow_editing...)

Thanks again @yaruson.
Yep, looks good. Everything works as expected.


Update Adding_an_Existing_Project_Using_Git_Remote_0930e56.md

Avoid confusion by writing all branches in lower case

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Correct! Thanks for your feedback.

https://people.sap.com/mariannnn


[openvdb] update to v8.0.0

Describe the pull request

What does your PR fix? Fixes #15811

Update openvdb to the latest version 8.0.0 and add AX feature
All features are tested successfully in the following trip;ets:

x86-windows
x64-windows
x64-windows-static

I was wondering if there are any updates on this PR.
I also would like to add a note: OpenVDB compiles and links against the latest version of blosc on Windows as well as v1.5.0 of blosc library. However, it requires blosc v1.5.0 on Linux (tested with Ubuntu 18.04) and macOS (tested with Catalina). It compiles but does not link when blosc is NOT v1.5.0 on Linux and macOS.
Is there a way to add blosc v1.5.0 instead of the latest available via vcpkg?

I was wondering if there are any updates on this PR.
I also would like to add a note: OpenVDB compiles and links against the latest version of blosc on Windows as well as v1.5.0 of blosc library. However, it requires blosc v1.5.0 on Linux (tested with Ubuntu 18.04) and macOS (tested with Catalina). It compiles but does not link when blosc is NOT v1.5.0 on Linux and macOS.
Is there a way to add blosc v1.5.0 instead of the latest available via vcpkg?

@orbingol ,If you need to use blosc v1.5.0 version, you can submit an update issue, I can update to the latest version and fix this pr together.

@JonLiu1993 I mean OpenVDB needs to use blosc v1.5.0 for Linux and macOS. I believe blosc v1.5.0 would be a downgrade for the existing port, v1.5.0 was released on Nov 7th, 2014 according to the GH release page.
Regarding OpenVDB, here are some references:

Linux install guide instructing to use blosc v1.5.0: https://github.com/AcademySoftwareFoundation/openvdb#linux
OpenVDB CMakeLists.txt about blosc: https://github.com/AcademySoftwareFoundation/openvdb/blob/86e07639320848e25cef3e663a35f0b68680b32b/CMakeLists.txt#L203

Since OpenVDB needs this specific version of blosc, I was wondering if it is possible to create a port, like blosc150, for use with OpenVDB till they support a more recent version of blosc. blosc v1.5.0 could also be integrated into the build step of OpenVDB. I don't think any other library would depend on such an old version of blosc. I can surely open an issue referencing this PR.
I am guessing installing different versions of the ports are still WIP in vcpkg, and creating a port as I suggested might solve OpenVDB Linux and macOS issues till the official solution comes. It looks like you were also able to compile against the windows triples.

@JonLiu1993 I mean OpenVDB needs to use blosc v1.5.0 for Linux and macOS. I believe blosc v1.5.0 would be a downgrade for the existing port, v1.5.0 was released on Nov 7th, 2014 according to the GH release page.

You can add another version; accessing it though would require a specific overridden version.

I am guessing installing different versions of the ports is still WIP in vcpkg

Different versions of ports at the same time is fundamentally impossible; it isn't a vcpkg limitation, it is a C++ limitation. It breaks the ODR.
That all seems like a preexisting problem not directly related to this PR so I'll merge it once build passes on the current infrastructure.

Thanks for your contribution! :)


Backport "Fix #19019: Always type self ValDefs in their outer context." to LTS

Backports #19030 to the LTS branch.
PR submitted by the release tooling.
[skip ci]

No regressions detected in the community build up to lts-19083.
Reference


refactor: fix all react-hooks/exhaustive-deps warnings in useSWR

This is the last PR to fix all react-hooks/exhaustive-deps warnings.
The PR fixes the warnings in useSWR, which adds some deps for memoizedState and disables the rule for revalidate.
For memoizedState, I've added all deps in the deps array. boundMutate is an immutable function, so we can omit it, but I've added it to the deps array to enable react-hooks/exhaustive-deps rule. It's an immutable function, so it shouldn't be a problem.
For revalidate, I've disabled the react-hooks/exhaustive-deps rule because fn and config are defined as the arguments of useSWR call, which means those values would be changed every time.
I could add eventsCallback, fnArgs, keyErr, and keyValidating into the deps array. It should be safe because they only depend on key that is already in the deps array.
But it makes tests flakier because current tests depends on JavaScript timer naively. If I added meaning-less values in the deps array for revalidate, tests would be failed frequently. So I didn't add them into the deps array.
[key, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

I'll investigate the way to fix flaky tests.

Thanks!

Thanks!

Thank you!

Thank you!


Emojis Don't Render Properly

Follow up to #2353
The following screenshot shows Atom and Oni side by side having the same file open. Additionally oni shows :version and the configuration file and atom shows the config. Both use the same font, although atom has fall-backs configured.

The file's content is
- name: ♻ Automatic duplicate workflow cancellation
- name: 🚨 Lint, format, and checks
- name: 🚧 Update build artifacts
- name: 🛠 Build frontend artifacts
- name: 🚩 Run wdio4 tests [1]
- name: 🚩 Run wdio4 tests [2]
- name: 🚩 Run wdio5 tests 1/2
- name: 🚩 Run wdio5 tests 2/2
- name: 🚩 Run landlord dashboard tests [1]
- name: 🚩 Run landlord dashboard tests [2]
- name: 🚩 Run landlord dashboard tests [3]
- name: 🚩 Run landlord dashboard tests [4]
- name: 🚩 Run crm tests
- name: 🚩 Run mocha tests
- name: 🚩 Run jest tests 1
- name: 🚩 Run jest tests 2
- name: 🚩 Check if jobs is compatible with @wunderflats/type
- name: 🛠 Build and publish docker image

It's a shortened GH Actions workflow file.

Thanks for splitting this out, @despairblue !

I'm trying to insert emojis, but the emoji covers up the next character and I'm not sure if it's there or not.


Did you notice that the loss in the training process is negative ?

Hi,
I am so interested in the research you did, and I tried to run the code you released. I just found that with default configuration, the loss printed on the screen are negative numbers. when I changed this line:
https://github.com/ZhenyueQin/Research-Softmax-with-Mutual-Information/blob/5c77c0bda6d5652e2d525e1acf1606d67d047cfd/pc_softmax_higher_accuracy/mnist_experiments/classification_mnist.py#L67
with this:
return torch.log_softmax(x, dim=1)

The loss values start to become positive. Have you observed this phenomenon ?

Hi,
Thanks for your interests!
We are aware that the loss is negative. The negativity is because the loss can be considered as the negative pointwise mutual information between data and label. Such a value is intrinsically negative. We know this is anti-intuitive.
If you don't mind a little bit more tedious comments, traditional softmax can be considered as the conditional entropy H(y | x), where x is the input data and y is the label. If we don't consider the continuous case, entropy is always positive, and the traditional softmax can be considered as minimising H(y | x).

Thanks for replying !! Will this softmax score range (can be greater than 1) affect the function of cross entropy ? Or does cross entropy requires the input scores to be within [0, 1] to provide effective gradients for training ?

We did not use the cross-entropy loss since it requires the input to be in the range of (0,1), as you have pointed out. Instead, we use negative log-likelihood (NLL). This is different from cross-entropy because cross-entropy involves a traditional softmax. That is, cross-entropy(x) = NLL(softmax(x)). In our case, we replace the (traditional) softmax with pc-softmax.


Set and Map support for _.isEmpty

Added support for Set and Map for _.isEmpty

That's a nice idea. Used to write my own wrapper for this functionality

@ushakov-igor Thank you for taking the effort to submit a pull request.
I think this would be nice to have, but it is a breaking change, so we have to be careful. Your PR may remain open for a while because of this.
For consistency, it would be best if all collection functions would treat Map and Set in the same way. This is not necessarily a bad idea, but it does make this a rather big breaking change.
I also recently learned from #2840 that the toString-based type checks like isMap are relatively slow. So to avoid a big slowdown in all functions that support Map and Set, there would have to be an isAssociative fuzzy checker analogous to the internal isArrayLike. I imagine the implementation might go like this:
var getSize = shallowProperty('size');
var getForEach = shallowProperty('forEach');

function isAssociative(collection) {
    var size = getSize(collection);
    var forEach = getForEach(collection);
    return typeof size == 'number' && typeof forEach == 'function' && size >= 0 && size <= MAX_ARRAY_INDEX;
}

For consistency, it would be best if all collection functions would treat Map and Set in the same way. This is not necessarily a bad idea, but it does make this a rather big breaking change.

Agreed. If we’re going to support Maps and Sets (and WeakMaps and WeakSets?), we should do it across the board, in a single release, and not piecemeal function-by-function.

WeakMaps and WeakSets cannot be iterated, so I don't think there's much to support about them in collection functions.


DefaultTransactionQueue: Ensure at most 2^12 created notes per batch

Related: #64

I think this may be as simple as making sure that if batch builder gets a list of more than $n$ transactions (i.e. here, it would return an error. $n$ should probably be defined in miden-base (i.e., here). We could call it MAX_TRANSACTIONS_PER_BATCH and it would be computed based on NOTE_TREE_DEPTH.

We could call it MAX_TRANSACTIONS_PER_BATCH and it would be computed based on NOTE_TREE_DEPTH.

Actually, we need one more constant to support this: MAX_BATCHES_PER_BLOCK. Then, MAX_TRANSACTIONS_PER_BATCH is defined as 2.pow(NOTE_TREE_DEPTH - MAX_BATCHES_PER_BLOCK.ilog2()).


Am having trouble controlling 747 LED.

I have checked all other forums and pages for reasons why its not working.
I have a test setup of 15 LED and a full setup of 747 LED.
Everything works fine on the Arduino DUE with the 15 LED at 1,000,000 baud rate but when changing it to 747 LED it does not work. I know the Raspberry Model Pi 3 is still talking to it because it still shows green red blue on the 747 LED's when I turn the server off and on.
I also know the Arduino can control the 747 LED's as the DemoReel100 in the FastLED library example runs it flawlessly.
Can anyone think of any thing to fix the issue. Thanks for any help I am totally out of ideas.
#include "FastLED.h"

#if FASTLED_VERSION < 3001000
#error "Requires FastLED 3.1 or later; check github for latest code."
#endif

// How many leds in your strip?
#define NUM_LEDS 747
// For led chips like Neopixels, which have a data line, ground, and power, you just
// need to define DATA_PIN.  For led chipsets that are SPI based (four wires - data, clock,
// ground, and power), like the LPD8806 define both DATA_PIN and CLOCK_PIN
#define DATA_PIN 8
//#define CLOCK_PIN 8

#define COLOR_ORDER GRB

// Adalight sends a "Magic Word" (defined in /etc/boblight.conf) before sending the pixel data
uint8_t prefix[] = {'A', 'd', 'a'}, hi, lo, chk, i;

// Baudrate, higher rate allows faster refresh rate and more LEDs (defined in /etc/boblight.conf)
#define serialRate 1000000

// Define the array of leds
CRGB leds[NUM_LEDS];

void setup() {
         FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);

        // initial RGB flash
        LEDS.showColor(CRGB(255, 0, 0));
        delay(500);
        LEDS.showColor(CRGB(0, 255, 0));
        delay(500);
        LEDS.showColor(CRGB(0, 0, 255));
        delay(500);
        LEDS.showColor(CRGB(0, 0, 0));

        Serial.begin(serialRate);
        Serial.print("Ada\n"); // Send "Magic Word" string to host

}

void loop() {
  // wait for first byte of Magic Word
  for(i = 0; i < sizeof prefix; ++i) {
    waitLoop: while (!Serial.available()) ;;
    // Check next byte in Magic Word
    if(prefix[i] == Serial.read()) continue;
    // otherwise, start over
    i = 0;
    goto waitLoop;
  }

  // Hi, Lo, Checksum

  while (!Serial.available()) ;;
  hi=Serial.read();
  while (!Serial.available()) ;;
  lo=Serial.read();
  while (!Serial.available()) ;;
  chk=Serial.read();

  // if checksum does not match go back to wait
  if (chk != (hi ^ lo ^ 0x55))
  {
    i=0;
    goto waitLoop;
  }

  memset(leds, 0, NUM_LEDS * sizeof(struct CRGB));
  // read the transmission data and set LED values
  for (uint8_t i = 0; i < NUM_LEDS; i++) {
    byte r, g, b;
    while(!Serial.available());
    r = Serial.read();
    while(!Serial.available());
    g = Serial.read();
    while(!Serial.available());
    b = Serial.read();
    leds[i].r = r;
    leds[i].g = g;
    leds[i].b = b;
  }
  // shows new values
 FastLED.show();
}

perhaps to many leds? On your 'productiv' setup try to configure with e.g. 100 leds. If this work raise amount of configured leds

Ok, I think there is something weird going on because the full setup works with 255 LED's in Hyperion and 254 LED's in Arduino and I can have full control as usual. Anything beyond that and there will be no response.

I know the Raspberry Model Pi 3 is still talking to it because it still shows green red blue on the 747 LED's when I turn the server off and on.

this is the test sequence from fastled, this will be done in every case and no communication is involved in that. See the setup function you provided above.
hyperion itself has no led count limitation. Often memory (ram) on the mcu or the communication speed is the limit.
But to be honest 747 leds are realy a big deal! Did you supply enough power (need 0.06A per led ~ 50A)

Yes, I am an electrician and have soldered power into the line every 2.5 meters with a 60a 5v power supply. Remember the DemoReel100 works perfectly. I will paste it in but I think it has something to do with the Arduino. Possibly the Serial Buffer. Its a very specific number 256.... I have added the main point but if I add the entire 747 file it's very long. I am not a coder or programmer so I am merely editing then testing different things. I also have no idea what most of the Arduino code even means so its hard for me to see the error.
"name"       : "MyHyperionConfig", 		"type"       : "adalight", 		"output"     : "/dev/ttyACM0", 		"rate"     : 1000000, 		"delayAfterConnect"     : 0, 		"colorOrder" : "grb"

Ok so it was a problem with the Arduino code Uint8_t which I changed to Uint16_t and it has worked a charm. The only thing now is the animation is not smooth at all. Very glitchy but this main problem has been fixed.

Try dropping the baud rate.
You might be getting serial overrun

Ok will do. Is it also possible that its because its now 16bit its slowing down. Should I try numbers between 8 and 16?

Tried that. It got much worse like 2fps or near. at 1mbaud its more like 5fps but still very noticeable. I am wondering if there is any smoothing or similar that can be done.

Ok other than the smoothing in the Hyperion program that ends up just blending the colours together I have a feeling the issue is with the update rate from the arduino as the slight glitch is still there even with the smoothing.

Have you tried parallel output?
https://github.com/FastLED/FastLED/wiki/Parallel-Output
You need also a 74HCT245 or similar buffer chip to increase the DUE's 3.3V signal to 5V.
WS2812b strips often do not like voltages on their data line lower than 4.5V.

I am interested in this parallel output although my strip is a singular line of 747 LED. There is no breaks in between the data line and it runs through a pelmet. Below is a video of it. With the buffer chip. Just doing a quick google and it appears to be quite complicated unless I am missing something. I am not an expert in this area and only delve into it when I have a need for it. Do you have a link of how to hook up this buffer chip. Appreciate your time.
https://www.youtube.com/watch?v=1GJhoRLG0Gs

There is no breaks in between the data line
That's strange, because every WS281X strip I saw was divisible.

U can buy a adaptor here https://www.pjrc.com/store/octo28_adaptor.html
It has the buffer chip and some resistors and RJ45 jacks on board, so u can use regular ethernet cables for the data lines.
I've made my own adaptor board using 4 channels and 104 RGBs to drive them at 60fps at the lowest possible latency.
I don't know how long the data line cables can get without loosing too much of the signal quality.

Could I just use a logic level converter or is that just to simple to work? I dont have a teensy with this system I have the Arduino Due. I am unsure how this will connect well together.

I can create breaks but currently I have the strip sitting in a pelmet all wired up 2 full runs of 284 and 1 end run of 174 with 5 buffer led's between the Due and first LED. So it rebuffs the signal every 2 meters. Its approx 8 to 10 meters to the start of the strip. I am guessing that it is a hardware limitation stopping me from getting better refresh rates? I can go to the trouble of cutting the LED strip but that would be a major set back as I would basically have to pull it all back down.
Another strange this is that the FastLED examples such as the DemoReel100 seems to have a much better refresh rate. I have tested it with all 747 LED and it seems to be much smoother. It made me think it was a scripting error slowing the whole thing down.

I see the due has a additional (native) usb port.
I have adopted the code I am using on my Teensy so it should run on ur Due using the native (not the programming) USB port.
The Due will automatically set the baud rate to the highest possible, so just ignore the setup parameter.
#include<FastLED.h>

uint16_t NUM_LEDS 747;
const int LED_PIN = 8;

elapsedMillis lastByteTime;
elapsedMillis lastAckTime;

uint8_t
  state = 0,
  led_on = 0;
uint16_t
  count = 0,
  led_cnt = 0;

unsigned char buf[3];

CRGB leds[NUM_LEDS];

void setup()
{
  FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
  pinMode(LED_PIN, OUTPUT);
  digitalWrite(LED_PIN, LOW);
  SerialUSB.begin(115200);
}

void led_off(){
  fill_solid(leds, NUM_LEDS, CRGB::Black);
  FastLED.show();
  led_on = 0;
}

void loop()
{
  if (state == 4) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes( (char*)(&leds[count]), 3);
    count++;
    if (count >= NUM_LEDS) {
      FastLED.show();
      led_on = 1;
      state = 0;
    }

  } else if (state == 0) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'A') ? 1 : 0;

  } else if (state == 1) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'd') ? 2 : 0;

  } else if (state == 2) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'a') ? 3 : 0;

  } else if (state == 3) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes((char *)buf, 3);
    if ((buf[0] ^ buf[1] ^ 0x55) == buf[2]) {
      led_cnt = buf[0] * 256 + buf[1] + 1;
      if (led_cnt > NUM_LEDS) led_cnt = NUM_LEDS;
      state = 4;
      count = 0;
    } else if (buf[0] == 'A' && buf[1] == 'd' && buf[2] == 'a') {
      state = 3;
    } else if (buf[1] == 'A' && buf[2] == 'd') {
      state = 2;
    } else if (buf[2] == 'A') {
      state = 1;
    } else {
      state = 0;
    }

  } else {
wait:
    if (!SerialUSB.dtr()) {
      digitalWrite(LED_PIN, LOW);
      led_off();
      while (!SerialUSB.dtr()) ;
      delay(20);
      digitalWrite(LED_PIN, HIGH);
      SerialUSB.print("Ada\n");
      lastByteTime = 0;
      lastAckTime = 0;
      state = 0;
      return;
    }
    if (lastAckTime > 1000) {
      lastAckTime = 0;
      while (SerialUSB.available()) SerialUSB.read();
      SerialUSB.print("Ada\n");
      state = 0;
    }
    if (lastByteTime > 10000) {
      lastByteTime = 0;
      if (led_on) led_off();
    }
    return;
  }

  lastAckTime = 0;
  lastByteTime = 0;

}

Getting the following error message
Arduino: 1.6.11 Hourly Build 2016/08/12 05:34 (Windows 7), Board: "Arduino Due (Native USB Port)"

In file included from C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino:1:0:

C:\Users\homeseer\Documents\Arduino\libraries\FastLED-3.1.0/FastLED.h:12:2: warning: #warning FastLED version 3.001.000 (Not really a warning, just telling you here.) [-Wcpp]

 #warning FastLED version 3.001.000  (Not really a warning, just telling you here.)

  ^

oCanna_Sketch:3: error: expected initializer before numeric constant

 uint16_t NUM_LEDS 747;

                   ^

oCanna_Sketch:6: error: 'elapsedMillis' does not name a type

 elapsedMillis lastByteTime;

 ^

oCanna_Sketch:7: error: 'elapsedMillis' does not name a type

 elapsedMillis lastAckTime;

 ^

oCanna_Sketch:18: error: 'NUM_LEDS' was not declared in this scope

 CRGB leds[NUM_LEDS];

           ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void setup()':

oCanna_Sketch:22: error: 'leds' was not declared in this scope

   FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);

                                          ^

oCanna_Sketch:22: error: 'NUM_LEDS' was not declared in this scope

   FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);

                                                ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void led_off()':

oCanna_Sketch:29: error: 'leds' was not declared in this scope

   fill_solid(leds, NUM_LEDS, CRGB::Black);

              ^

oCanna_Sketch:29: error: 'NUM_LEDS' was not declared in this scope

   fill_solid(leds, NUM_LEDS, CRGB::Black);

                    ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void loop()':

oCanna_Sketch:38: error: 'leds' was not declared in this scope

     SerialUSB.readBytes( (char*)(&leds[count]), 3);

                                   ^

oCanna_Sketch:40: error: 'NUM_LEDS' was not declared in this scope

     if (count >= NUM_LEDS) {

                  ^

oCanna_Sketch:63: error: 'NUM_LEDS' was not declared in this scope

       if (led_cnt > NUM_LEDS) led_cnt = NUM_LEDS;

                     ^

oCanna_Sketch:85: error: 'lastByteTime' was not declared in this scope

       lastByteTime = 0;

       ^

oCanna_Sketch:86: error: 'lastAckTime' was not declared in this scope

       lastAckTime = 0;

       ^

oCanna_Sketch:90: error: 'lastAckTime' was not declared in this scope

     if (lastAckTime > 1000) {

         ^

oCanna_Sketch:96: error: 'lastByteTime' was not declared in this scope

     if (lastByteTime > 10000) {

         ^

oCanna_Sketch:103: error: 'lastAckTime' was not declared in this scope

   lastAckTime = 0;

   ^

oCanna_Sketch:104: error: 'lastByteTime' was not declared in this scope

   lastByteTime = 0;

   ^

exit status 1
expected initializer before numeric constant

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

#include<FastLED.h>
#include <elapsedMillis.h>

uint16_t NUM_LEDS = 747;
const int LED_PIN = 8;

elapsedMillis lastByteTime;
elapsedMillis lastAckTime;

uint8_t
  state = 0,
  led_on = 0;
uint16_t
  count = 0,
  led_cnt = 0;

unsigned char buf[3];

CRGB leds[NUM_LEDS];

void setup()
{
  FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
  pinMode(LED_PIN, OUTPUT);
  digitalWrite(LED_PIN, LOW);
  SerialUSB.begin(115200);
}

void led_off(){
  fill_solid(leds, NUM_LEDS, CRGB::Black);
  FastLED.show();
  led_on = 0;
}

void loop()
{
  if (state == 4) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes( (char*)(&leds[count]), 3);
    count++;
    if (count >= NUM_LEDS) {
      FastLED.show();
      led_on = 1;
      state = 0;
    }

  } else if (state == 0) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'A') ? 1 : 0;

  } else if (state == 1) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'd') ? 2 : 0;

  } else if (state == 2) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'a') ? 3 : 0;

  } else if (state == 3) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes((char *)buf, 3);
    if ((buf[0] ^ buf[1] ^ 0x55) == buf[2]) {
      led_cnt = buf[0] * 256 + buf[1] + 1;
      if (led_cnt > NUM_LEDS) led_cnt = NUM_LEDS;
      state = 4;
      count = 0;
    } else if (buf[0] == 'A' && buf[1] == 'd' && buf[2] == 'a') {
      state = 3;
    } else if (buf[1] == 'A' && buf[2] == 'd') {
      state = 2;
    } else if (buf[2] == 'A') {
      state = 1;
    } else {
      state = 0;
    }

  } else {
wait:
    if (!SerialUSB.dtr()) {
      digitalWrite(LED_PIN, LOW);
      led_off();
      while (!SerialUSB.dtr()) ;
      delay(20);
      digitalWrite(LED_PIN, HIGH);
      SerialUSB.print("Ada\n");
      lastByteTime = 0;
      lastAckTime = 0;
      state = 0;
      return;
    }
    if (lastAckTime > 1000) {
      lastAckTime = 0;
      while (SerialUSB.available()) SerialUSB.read();
      SerialUSB.print("Ada\n");
      state = 0;
    }
    if (lastByteTime > 10000) {
      lastByteTime = 0;
      if (led_on) led_off();
    }
    return;
  }

  lastAckTime = 0;
  lastByteTime = 0;

}

You should also install the missing lib ;)
http://playground.arduino.cc/Code/ElapsedMillis#source

If the Due's usb port is not DTR capable, just leave out the following code block:
    if (!SerialUSB.dtr()) {
      digitalWrite(LED_PIN, LOW);
      led_off();
      while (!SerialUSB.dtr()) ;
      delay(20);
      digitalWrite(LED_PIN, HIGH);
      SerialUSB.print("Ada\n");
      lastByteTime = 0;
      lastAckTime = 0;
      state = 0;
      return;
    }

Here is an updated version without DTR that should hopefully fit ur Due ...
#include<FastLED.h>
#include <elapsedMillis.h>

uint16_t NUM_LEDS = 747;
const int LED_PIN = 8;

elapsedMillis lastByteTime;
elapsedMillis lastAckTime;

uint8_t
  state = 0,
  led_on = 0;
uint16_t
  count = 0,
  led_cnt = 0;

unsigned char buf[3];

CRGB leds[NUM_LEDS];

void setup()
{
  FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
  SerialUSB.begin(115200);
  SerialUSB.print("Ada\n");
}

void led_off(){
  fill_solid(leds, NUM_LEDS, CRGB::Black);
  FastLED.show();
  led_on = 0;
}

void loop()
{
  if (!SerialUSB) {
    while (!SerialUSB) /* wait */ ;
    delay(20);
    SerialUSB.print("Ada\n");
    lastByteTime = 0;
    lastAckTime = 0;
    state = 0;
    count = 0;
  }

  if (state == 4) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes( (char*)(&leds[count]), 3);
    count++;
    if (count >= NUM_LEDS) {
      FastLED.show();
      led_on = 1;
      state = 0;
    }

  } else if (state == 0) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'A') ? 1 : 0;

  } else if (state == 1) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'd') ? 2 : 0;

  } else if (state == 2) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'a') ? 3 : 0;

  } else if (state == 3) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes((char *)buf, 3);
    if ((buf[0] ^ buf[1] ^ 0x55) == buf[2]) {
      led_cnt = buf[0] * 256 + buf[1] + 1;
      if (led_cnt > NUM_LEDS) led_cnt = NUM_LEDS;
      state = 4;
      count = 0;
    } else if (buf[0] == 'A' && buf[1] == 'd' && buf[2] == 'a') {
      state = 3;
    } else if (buf[1] == 'A' && buf[2] == 'd') {
      state = 2;
    } else if (buf[2] == 'A') {
      state = 1;
    } else {
      state = 0;
    }

  } else {
wait:
    if (lastAckTime > 1000) {
      lastAckTime = 0;
      while (SerialUSB.available()) SerialUSB.read();
      SerialUSB.print("Ada\n");
      state = 0;
    }
    if (lastByteTime > 10000) {
      lastByteTime = 0;
      if (led_on) led_off();
    }
    return;
  }

  lastAckTime = 0;
  lastByteTime = 0;

}

In file included from C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino:1:0:

C:\Users\homeseer\Documents\Arduino\libraries\FastLED-3.1.0/FastLED.h:12:2: warning: #warning FastLED version 3.001.000 (Not really a warning, just telling you here.) [-Wcpp]

 #warning FastLED version 3.001.000  (Not really a warning, just telling you here.)

  ^

oCanna_Sketch:19: error: array bound is not an integer constant before ']' token

 CRGB leds[NUM_LEDS];

                   ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void setup()':

oCanna_Sketch:23: error: 'leds' was not declared in this scope

   FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);

                                          ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void led_off()':

oCanna_Sketch:29: error: 'leds' was not declared in this scope

   fill_solid(leds, NUM_LEDS, CRGB::Black);

              ^

C:\Users\homeseer\Documents\Arduino\oCanna_Sketch\oCanna_Sketch.ino: In function 'void loop()':

oCanna_Sketch:48: error: 'leds' was not declared in this scope

     SerialUSB.readBytes( (char*)(&leds[count]), 3);

                                   ^

exit status 1
array bound is not an integer constant before ']' token

Sorry for that mess. I have no IDE installed on this machine...
#include<FastLED.h>
#include <elapsedMillis.h>

const int NUM_LEDS = 747;
const int LED_PIN = 8;

elapsedMillis lastByteTime;
elapsedMillis lastAckTime;

uint8_t
  state = 0,
  led_on = 0;
uint16_t
  count = 0,
  led_cnt = 0;

unsigned char buf[3];

CRGB leds[NUM_LEDS];

void setup()
{
  FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
  SerialUSB.begin(115200);
  delay(200);
  SerialUSB.print("Ada\n");
}

void led_off(){
  fill_solid(leds, NUM_LEDS, CRGB::Black);
  FastLED.show();
  led_on = 0;
}

void loop()
{
  if (!SerialUSB) {
    while (!SerialUSB) /* wait */ ;
    delay(20);
    SerialUSB.print("Ada\n");
    lastByteTime = 0;
    lastAckTime = 0;
    state = 0;
    count = 0;
  }

  if (state == 4) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes( (char*)(&leds[count]), 3);
    count++;
    if (count >= NUM_LEDS) {
      FastLED.show();
      led_on = 1;
      state = 0;
    }

  } else if (state == 0) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'A') ? 1 : 0;

  } else if (state == 1) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'd') ? 2 : 0;

  } else if (state == 2) {
    if (SerialUSB.available() == 0) goto wait;
    state = (SerialUSB.read() == 'a') ? 3 : 0;

  } else if (state == 3) {
    if (SerialUSB.available() < 3) goto wait;
    SerialUSB.readBytes((char *)buf, 3);
    if ((buf[0] ^ buf[1] ^ 0x55) == buf[2]) {
      led_cnt = buf[0] * 256 + buf[1] + 1;
      if (led_cnt > NUM_LEDS) led_cnt = NUM_LEDS;
      state = 4;
      count = 0;
    } else if (buf[0] == 'A' && buf[1] == 'd' && buf[2] == 'a') {
      state = 3;
    } else if (buf[1] == 'A' && buf[2] == 'd') {
      state = 2;
    } else if (buf[2] == 'A') {
      state = 1;
    } else {
      state = 0;
    }

  } else {
wait:
    if (lastAckTime > 1000) {
      lastAckTime = 0;
      while (SerialUSB.available()) SerialUSB.read();
      SerialUSB.print("Ada\n");
      state = 0;
    }
    if (lastByteTime > 10000) {
      lastByteTime = 0;
      if (led_on) led_off();
    }
    return;
  }

  lastAckTime = 0;
  lastByteTime = 0;

}

Ok I have tried the above script which compiles and uploads correctly. Unfortunately on both the programming and native port I do not get any LED activation at all. I also changed the baud rate in the script to 1,000,000 and re tested which provided the same results. I also checked the usb port for the correct name and it is the same for the native port and the programming port.

Please do not change the baud rate in the sketch, as it will have no effect on the native USB port.
What do you see on the raspberry in dmesg when you fire up the Due?
There should be a new device showing up and you have to adjust the device path in your hyperion config.
In my sketch there is no demo, so you won't see anything until hyperion starts 'talking'.


Live preview of camera stream?

Hey @pptman, @andreabassi78, I just stumbled upon your great project and was remembering the talk you gave on the SIMPosium. We are playing with Napari and our microscopes and will definitely give your algorithm a try. Super curious! Thanks for making it open source! :-)
I was wondering (I have not yet looked into the code) if it would be possible, in principle, to continuously reconstruct data that comes from the camera and display the sim reconstructions in one of the layers (assuming I have a frame generator or something like that).
Do you think that's plausible?

Hi @beniroquai, thanks for the message. I have seen a few projects on image acquisition on the napari-hub. I'm not sure if it's ideal for acquisition if you have multiple devices / complex hardware to control. So far we are using mainly ScopeFoundry developed by @edbarnard at BerkleyLab for acquisition. Maybe a good idea would be to integrate the two. Very open to brainstorming on that.

That sounds great! We started contributing to the "ImSwitch" project (https://github.com/kasasxav/ImSwitch),that exactly does what you were asking for. Hardware control + synchronization. We use it for our UC2 system (https://github.com/openUC2/UC2-GIT) and I was wondering if I could integrate your plugin in a dedicated plugin that receives camera frames and reconstructs it on the fly. (e.g. 3phases, 3angles).

Hi @beniroquai, the processing code is certainly capable of doing stream processing.  There are methods in the processing code that process just the difference between the latest acquired frame and the last acquired frame in the SIM sequence that are specifically for stream processing.  Take a look at the "reconstruct frame" methods, we use these in our ScopeFoundry implementations.  3phases 3ngles is already implemented.  The only real issue is when to calibrate the system within your live stream.

Hey @pptman, thanks! I'm trying to build a minimal working "Test"-file based on your _widget. The first step would be to load a stack of images captured by the camera, process it and then visualize it in the Napari/ImSwitch viewer.
I was wondering, do you have such a Test-file already somewhere?

Hi @beniroquai , it looks like you are making rapid progress, we will definitely take a look at your imSwitch project as an alternative to what we are doing in ScopeFoundry.
I have just added a branch "streamprocess" to the repository that demonstrates how you might use the reconstructframe methods to do frame-by-frame SIM reconstruction.  It takes a full stack of raw images and outputs a processed stack of the same size.  I don't think I have got the scaling quite right when displaying the processed stack in the viewer, but it shows how it all works.

Nice! Thanks!
Is this limited to the GPU memory size?
The ImSwitch integration is "brute force" (Sorry I'm not a programmer..) to give an impression how the sample may look like when doing SIM reconstruction on the fly.


[FEA]: Publish a Morpheus models container

Is this a new feature, an improvement, or a change to existing functionality?
Improvement
How would you describe the priority of this feature request
Low (would be nice)
Please provide a clear description of problem this feature solves
We advertise in our documentation that this is the easiest way to start using Morpheus and the pre-trained modules is to use one of our pre-built Docker containers on NGC. However this introduces a few difficulties :

Our containers are large because they include the models
The models are inside the container, requiring the user to launch triton from inside the container, which means they need to mount the docker socket file
The docker command isn't in the container requiring the user to run the docker/install_docker.sh script

Describe your ideal solution
Publish a separate models container that layers on top of Triton
Describe any alternatives you have considered
Install docker in the default container image
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I have searched the open feature requests and have found no duplicates for this feature request

The models are inside the container, requiring the user to launch triton from inside the container, which means they need to mount the docker socket file
The docker command isn't in the container requiring the user to run the docker/install_docker.sh script

The k8s instructions have the user copy out the models, configs, datasets to a host path that can be shared amongst the containers.

@pdmack does that require access to the kubectl command, and thus require running in K8? Is there an equivalent for users running docker locally?

A user could also use the docker cp ... command to move the models out of the container to a host path.

That would be a viable alternative then.

Part of this would be to revert and adjust the changes in #1507


Remove dirname

:tada: This PR is included in version 8.0.0-alpha.7 :tada:
The release is available on:

v8.0.0-alpha.7
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 8.0.0-beta.1 :tada:
The release is available on:

v8.0.0-beta.1
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 8.0.0 :tada:
The release is available on:

v8.0.0
GitHub release

Your semantic-release bot :package::rocket:


Handle errors

Hello reviewers!
Please run the app locally. I'm facing some hardware issues and I wasn't able to deploy the latest changes both for backend and frontend.
Here is the link to the previous pull request.
Thank you for understanding and for your review.

Hello reviewers!
Please run the app locally. There is a problem with the deployment of API. Since I used Active Storage for image uploads I should use the cloud to store images. But I wasn't able to do so since I don't have any card to indicate (visa card, master card...), all of the cloud services ask for the card details even if they provide free usage. And also, I don't know why but on the live version token is not being stored on the local storage because of which some errors occur.
Thank you for understanding and for your review.


Remove browser gateway altogether

The browser is not supported error is annoying and almost useless, you really should remove the check altogether, it isn’t necessary at all, only an unfair gateway, only put a note that the browser is untested.

By the way, an anonymous donor donated a dump of the Roku OS system files: https://archive.org/download/roku_disk_image/roku_disk_image.zip/
The plug-ins folder has a few Roku apps, and that includes the Home Screen itself

Download: https://archive.org/download/roku_disk_image/roku_disk_image.zip

Now that even Safari supports it, I will remove, good point.
This dump is cool, will take a look.

Addressed on #181


DMX read example - 'isr_handle' undeclared in arduino 2.14

I have error with example code or if I am just trying include esp_dmx 3.1 library. It's error only for "old" (stable) esp32_arduino 2.14. If I try with esp32_arduino 3.0 alpha 3 it is not problem.
/home/tomi/Arduino/libraries/esp_dmx/src/dmx/hal/timer.c: In function 'dmx_timer_init':
/home/tomi/Arduino/libraries/esp_dmx/src/dmx/hal/timer.c:97:52: error: 'isr_handle' undeclared (first use in this function); did you mean 'intr_handle_t'?
   timer_isr_callback_add(timer->group, timer->idx, isr_handle, isr_context,
                                                    ^~~~~~~~~~
                                                    intr_handle_t
/home/tomi/Arduino/libraries/esp_dmx/src/dmx/hal/timer.c:97:52: note: each undeclared identifier is reported only once for each function it appears in

exit status 1

Thanks for the report and thank you for your patience.
This appears to be a silly typo on my end. Are you able to make an edit to that file? You will need to navigate to line 97 of Arduino/libraries/esp_dmx/src/dmx/hal/timer.c. There is a pair of lines which read:
  timer_isr_callback_add(timer->group, timer->idx, isr_handle, isr_context,
                         isr_flags);

I believe the argument which is isr_handle needs to be replaced with dmx_timer_isr. The end result is that the code should instead read:
  timer_isr_callback_add(timer->group, timer->idx, dmx_timer_isr, isr_context,
                         isr_flags);

I will also write a patch to fix this issue. Let me know if you have any questions!


Lantern's Lollipop update, as well as its new construction

Of course, Lantern still supports 4.3 to 4.4.+, but now it also works for 5.0! Specifically, #15 and #6.
As for the new means of construction a beacon listener, it rocks, but I forgot to document it. :neutral_face: I'll do that immediately, then you can review that last bit, @louie2107.

Alrighty! Readme is accurate

Looks good.