Internal links on site head

I needed some links on the cover page to link to internal sites and not showing the leading fork awesome icon.
For some of these pages I also wanted to get the content still rendered on the homepage - for others not.
With these changes two parameters are introduced in the markdown files:
internal = the URL to link to
internal_hide = if true then do not render this markdown file (as a side-effect this works on all homepage markdown files to show or hide them)

Something seems wrong with the demo page, see deployed demo, at the very bottom. https://deploy-preview-158--hugo-scroll.netlify.app/#github

Added leading '---' to internal.md.

@spi43984 If you go check the demo now, there are some outstanding issues

two sections Contact + Contacts, sounds illogical to have two of them
try navigating from landing page, from left "sticky menu", play around, I managed to run into an error.

@spi43984 If you go check the demo now, there are some outstanding issues

two sections Contact + Contacts, sounds illogical to have two of them

fair point - as there is already a contact section, will prepare another example, maybe legal or something

try navigating from landing page, from left "sticky menu", play around, I managed to run into an error.

What was the error? Can you please give some more context?
Or is it GITHUB to show up in the nav menu? Which should not as it is an external link, found a bug in index.html - am trying to solve that:
{{ $content := where $sections "Params.external" "==" nil }}
{{ $content := where $sections "Params.internal_hide" "ne" true }}

The second line circumvents the first one and renders homepage content even it is an external link.
Is there a combination possible like
{{ $content := where $sections and ("Params.internal_hide" "ne" true) ("Params.internal_hide" "ne" true) }}

@spi43984 If you go check the demo now, there are some outstanding issues

two sections Contact + Contacts, sounds illogical to have two of them
try navigating from landing page, from left "sticky menu", play around, I managed to run into an error.

please review

two sections Contact + Contacts, sounds illogical to have two of them

Looks good now, thanks!

try navigating from landing page, from left "sticky menu", play around, I managed to run into an error.

Unable to reproduce the error, looks ok now.


Add Scala + http4s backend repository

Closes #480

Thanks, @alex-k1!
Apologies for the delay in reviewing your PR, the maintenance team had very limited availability and we've recruited new members to help with the project.
Your PR is now merged and your implementation should soon appear in the backend section of the README.

Thanks, @alex-k1!
Apologies for the delay in reviewing your PR, the maintenance team had very limited availability and we've recruited new members to help with the project.
Your PR is now merged and your implementation should soon appear in the backend section of the README.


Writing of yaml files should include comments, or not?

The way we read and write settings files ends up excluding the comments. I personally would love to keep my comments. Is this possible to do given the way we read and write settings files?
It certainly is possible for a round trip of reading and writing to preserve comments. But ARMI only tracks the settings when reading:
https://github.com/terrapower/armi/blob/fe7f42f9ff838f5e3b8fb457ec5334d8ead05c1a/armi/settings/settingsIO.py#L200-L218
And only uses the settings object to write out (note dump is only given settingData):
https://github.com/terrapower/armi/blob/fe7f42f9ff838f5e3b8fb457ec5334d8ead05c1a/armi/settings/settingsIO.py#L284-L291
It occurs to me to preserve the comments that SettingsReader and SettingsWriter might need to subclass from something that has the information about the comments. Which is a major architecture change and maybe not worth it for some measly comments. But I wanted to discuss it, because I think others might also want to keep their comments.

I'm just confused about the fact that comments are not currently printed, because I was under the impression that this was the entire point of us using Yamlize and not just pyyaml or something similar.
Maybe I'm wrong about that.

I'm just confused about the fact that comments are not currently printed

This is because during reading and writing, only the setting object itself is tracked, not the entire contents of the file. (I figured that out after we talked)

I think the main feature of yamlize is round trip reading and writing the yaml data to and from memory. One component that yamlize advertises is maintaining comments when dumping, but I don't know if that feature was implemented correctly per this discussion here.
I would definitely be in favor of retaining comments, but would have to do a bit more research on how that is supposed to work with the yamlize API. Maybe we can reach out to Graham who is the owner of that code base for advise as an issue or discussion on the yamlize repo?

Retaining comments in a YAML would be tricky.  Here are some complications:
# This is a 3D model
dimensions: 3

Then someone changes dimensions to 2, now it's a 2D model, but if you preserve the comment, you get:
# This is a 2D model
dimensions: 3

Other gotchas and concerns:

YAML comments go out of date when settings change.
Preserving comments spread throughout a YAML file would mean preserving the ORDER items are listed in the YAML file. But
YAMLs are just dicts, they are un-ordered.

And if you add more items to the YAML, say embedded 3 layers deep in the YAML nesting, you can't preserve the order of the YAML elements.

What happens when we combine YAML files (because we have YAMLs that reference other YAMLs)?

How do your "preserve" comments when the number of YAML files out doesn't equal the number in?

My opinion is:

The only practical way to preserve YAML comments is just to have a copy/paste version of the entire original YAML file somewhere.

Yes, they both do support round tripping of comments.
The issue is how ARMI reads and writes the YAML files. The SettingsReader will read the file, but the only information that gets preserved are the actual case settings that are read in:
https://github.com/terrapower/armi/blob/fe7f42f9ff838f5e3b8fb457ec5334d8ead05c1a/armi/settings/settingsIO.py#L152-L162
Similarly, the SettingsWriter only draws upon the case settings in order to write a new YAML file:
https://github.com/terrapower/armi/blob/fe7f42f9ff838f5e3b8fb457ec5334d8ead05c1a/armi/settings/settingsIO.py#L273-L277


URL add API set-up like Obtainium

Hello,
Can you setup api like Obtainium app where we can browse and add URL of modded app from supported sires and Update Me will track them for updates and notify when it is available.
This will help greatly for all the user's.
There will be no need to raise App Request also users can selectively add the which they use and wants to keep them updated

This is far better than request system

Closing this issue.
While this is a good suggestion, I'm not adding any new app sources to the current version. However, I'm excited to share that this type of functionality will be available in v3.0.0.
The new version will introduce a system where users can create and share their own providers, giving everyone more flexibility in choosing their app sources and managing updates. This will be part of the complete rebuild that's currently in development.
Stay tuned for the official announcement about v3.0.0 which will include more details about this feature.


How can I build it locally in my laptop?

Hi,
I am really impressed with your work. I want to build a website on my laptop. How can I get this in local server? Is it possible to run it locally?

Hello.
Most likely you will not be able to run on a laptop. Take any VPS server (Debian 10 x64, Ubuntu 18 x64) and ask your hosting support to provide you with a test period.


Allow clients to execute custom code on specific events

Hello @AbreezaSaleem!
I loved this little package and the idea behind it. I can see it being used by many people as it is a quick plug and play recording solution with a customizable player included.
The Basic Idea
Currently there is no way for the users to execute custom code right after starting recording, during recording, after recording ends etc. To solve this we can provide events as props, such as:

onRecordingStart
onRecordingEnd
onPlayStart
onPlayEnd
onRecordingPause
OnRecordingResume
... and more.

So that consumers are allowed to execute code on these events as a feature of the npm-package instead of doing it by themselves. This will help consumers to reduce custom boilerplate code that they will inevitably have to write to do such things. Moreover, this feature is a usual feature among other great packages.

This is a great suggestion @Fanoflix i'll be getting to this soon :)

Here's the proposal for implementing this feature:
Requirement
The requirement of this request is that we expose custom events to the user so they can execute code on their end as per their use cases.
Solution
Expose the following events to the user:

onRecordingStart: () => void
onRecordingEnd: (audioData) => void
onPlayStart: (audioData) => void
onPlayEnd: (audioData) => void
onRecordingPause: () => void
onPlayPause: () => void

@Fanoflix Let me know if you have any suggestions on this; otherwise, I'll push this change.

@AbreezaSaleem This seems good enough. I am eager to see your implementation of it!

Feature deployed v1.1.0


Index size make smaller less than limitation of InnoDB.

im really at a loss why people are PR'ing this "workaround" constantly .. it is 1 database out of 4 and only if you are using the 'wrong' version of that one .... why would that need to be applied for EVERYONE?


Only update the icon of a tab it the icon actually changed

Summary of the Pull Request
Only update the icon of a tab it the icon actually changed. The way we have it, we'll try and update the icon everytime focus changes, causing the tab icon to blink for a second, even when switching between two panes with the same profile.

References
While I was here, I also fixed #2329, I think accidentally. But that's cool!

PR Checklist

[x] fixes #1333
[x] Also tangentially fixes #2329
[x] CLA signed. If not, go over here and sign the CLA
[ ] Tests added/passed (please review #2294 so I can start checking this box)

Detailed Description of the Pull Request / Additional comments

Validation Steps Performed

How does this fix #2339?

@DHowett-MSFT that was a typo, definitely meant #2329

In that case, we can remove the exception handler around the otehr call. Do we need CATCH_LOG (it'll generate a report in the debugger)? or do we want a different type of catch (quieter kind)?

It's baa~ack!
 fatal error C1083: Cannot open compiler intermediate file:
'd:\a\1\s\obj\x64\auditmode\localtests_terminalapp\terminalapp.localtests.pch': Not enough space

#2329 is not fixed in v0.4.2382.0
Try the repetition step listed in #2329. Looks like Windows Terminal could use a QA boost.

Can confirm that #2329 is still broken in v0.5.2681.0
Simple Replication::
1.) Open profiles.json
2.) Change any profiles icon to

"icon": "InvalidFileName.png",

3.) Save


Add Lagoon PaaS detection to Wappalyzer

This PR is to propose the addition of Lagoon to the PaaS category on Wappalyzer.
Lagoon (https://www.amazee.io/lagoon/) is an open source container-based hosting platform.  It's GitHub project has over 340 stars (https://github.com/amazeeio/lagoon) and it is listed on the CNCF landscape (https://landscape.cncf.io/selected=lagoon).
A selection of sites around the world hosted on Lagoon:
https://www.tierwelt.ch/
https://www.smartsheet.com/
https://www.zuerich.com/
https://www.sonova.com/
https://www.fischerconnectors.com/
https://www.paraplegie.ch/
https://www.venture.ch/
https://www.wmf.org/
https://www.gulfbase.org/
https://www.vic.gov.au/
~300 Websites listed on https://www.govcms.gov.au/websites-hosted-govcms
(including)
https://www.health.gov.au/
https://www.smartraveller.gov.au/
https://www.ipc.nsw.gov.au/
https://www.latrobe.vic.gov.au/
https://www.qfcc.qld.gov.au/
https://www.education.sa.gov.au/

Thanks!

Thanks!


New version: Unity.Unity.2022 version 2022.3.30f1

Created by 🥟 Dumplings in workflow run #5308.
Logs
Updated: 2022.3.29f1 → 2022.3.30f1
Submitting WinGet manifests

Microsoft Reviewers: Open in CodeFlow

@wingetbot run

This package installs and launches normally on a Windows 10 VM.

This package installs and launches normally on a Windows 10 VM.


⚠ Bofrost.de has degraded performance

In e6848d1, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1360 ms

Resolved: Bofrost.de performance has improved in 98e14dc.


rogcat as a library

Hi. Is rogcat a wrapper over logcat binary or is it a port with more features? I want to write a log shipper for android. My service runs inside android and I need a way to read logs. Can rogcat be used for this purpose?

Hi. rogcat is mainly a wrapper that provides convenience features that the plain logcat doesn't have. It not intended to be used as a library and probably not very portable because it has tons of dependencies. I'm not sure if I fully understand what a log shipper is. Do you want to read the buffers and send it somewhere? This basically running logcat and read it's stdout.
Is your service written in Rust? If yes you can get some inspiration:
If you need to parse the logcat format, have a look at the parser. For calling and capturing locats output  see runner.rs.
The individual modules of rogcat are that small that it's not really been worth separating them into crates, but of course this is possible...

Do you want to read the buffers and send it somewhere?

Yeah

This basically running logcat and read it's stdout.

Yeah. But I'm not sure of the costs of reading output from logcat vs reading from buffers directly.

This seems to be clarified. @tekjar comment if you disagree. :-)

You clarified my question. Thanks :)


MaterialWindow TitleDataTemplate

If possible, add a TitleDataTemplate for MaterialWindow. Sometimes it’s convenient to have some other buttons in the window title (for example, settings) for quick access.

You have an awesome library. I really lacked the implementation of these elements in the Material style. Thanks you

@AgPeHaJIuH1 I was thinking of adding buttons to the title bar some months ago. I will schedule this feature for a future release.

@AgPeHaJIuH1 You may check out the latest prerelease to see the new property in action. See the MainWindow of the demo for an example.


The file and folder generation time is a few hours and minutes faster than local time

For example, I uploaded a file at 3:40 pm EST and file time says 6:52PM.

The hours might be off because of the date/time being expressed in UTC.  The minutes are probably due to incorrect time on the Workspace and/or shock servers since the power outage/reboot.  I've checked the p3-prod servers at VBI and the date/time look to be correct (and the date/time comes from the workspace in any case)

Hm, ntp running on the collection of servers at ANL and times appear to be correct. Will need to check further.

Appears to be correct now.


maxDuration

Hi, thank you for your work.
I changed the maximum duration but I still have the error : Your Audiogram must be under 300 seconds.
I used Archlinux (Docker).
{
  "default": {
    "width": 1280,
    "height": 720,
    "framesPerSecond": 20,
    "samplesPerFrame": 128,
    "pattern": "wave",
    "waveTop": 150,
    "maxDuration": 600,
    "waveBottom": 420,
    "captionTop": 470,
    "captionFont": "300 52px 'Source Sans Pro'",
    "captionLineHeight": 52,
    "captionLineSpacing": 7,
    "captionLeft": 200,
    "captionRight": 1080
  },

I'd also like to remove the maxDuration completely.

The problem when using Docker is when you create the image, it doesn't use the local code you edited. Instead it downloads the original code from Git. I don't know much about Docker but this is what you need to change in the Dockerfile:
> # Clone repo
> RUN git clone https://github.com/nypublicradio/audiogram.git
> WORKDIR /home/audiogram/audiogram
>

The BBC has forked the project and has been updating it regularly. It looks like the Dockerfile builds the image using local code. https://github.com/BBC-News-Labs/audiogram


Added tag topic>abap-connectivity

 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.


Half of the aiming dot is invisible

Describe the bug
The gun modification interface sometimes makes the aiming dot disappear in half.
Reproducibility

[X] I reproduced this issue with as few other mods as possible installed.
[ ] I am unable to reproduce this issue consistently.

Screenshots and/or videos
No response
Logs
no logs
Debug Logs
No response
Crash Reports
No response
MWC Version
0.1.5
Forge Version
1.12.2 forge <IP_ADDRESS>60
Red Core Version
0.6 dev 3
MixinBooter Version
9.1
Java Version
1.8
Java Virtual Machine
Hotspot
Operating System
windows 11
GPU Vendor
NVIDIA
Code of Conduct

[X] I agree to follow this project's Code of Conduct

https://github.com/Cubed-Development/Modern-Warfare-Cubed/assets/130232431/af5eb950-ad23-4ef3-9e27-a2d45ceb8f3d

Thinking of this gives me a headache


mame: 0.243 -> 0.249

Description of changes

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 198473 run on x86_64-linux 1

1 package built:

mame

Fixed the formatting issue, let's just wait the CI checks.


helm chart overhaul

First draft for #1394 here, mainly looking for feedback, some more things will need to change before this is fully functional.
helm template works and most of the chart settings I wanted to change are there.
Global

Removed creationTimestamp from everything as it will be setup automatically anyway
Removed namespace from everything since helm will set the value to .Release.Namespace by default
Removed the annotations and labels field from everything if not used (the "if" clause starts above it so setting labels: {} in most cases will result in no labels field to be created.
Replaced "kubeshark" from most of the resource names to replace with the .Release.Name instead to match what is being done in other projects.

RBAC

Created the rbac structure to isolate settings to only the serviceAccount, ClusterRole and ClusterRoleBinding

Hub
Workload

Created the hub structure to isolate settings for the hub.
Converted the pod to a deployment instead.
Replaced the individual fields for resources with an ad-lib block. This will allow setting only some (or none) of the fields.
Replaced the tolerations with an ad-lib block. The default should be that the deployment has no toleration and experienced users with specific use-cases may add some as needed.
Added more customization to the container image definition
Added the containerPort definition to explicitly expose the port that was being used for the hub.

Service

Modified the service to be able to set another port if needed
Targeted the http-api on the hub deployment

Front
Workload

Created the front structure to isolate settings for the front.
Converted the pod to a deployment instead.
Replaced the hardcoded resources with an ad-lib block. This will allow setting custom resources instead of having them hardcoded.
Replaced the tolerations with an ad-lib block. The default should be that the deployment has no toleration and experienced users with specific use-cases may add some as needed.
Added more customization to the container image definition
Added the containerPort definition to explicitly expose the port that was being used for the front.
Set the REACT_APP_HUB_PORT to use the hub port defined in the hub service instead.

Service

Modified the service to be able to set another port if needed
Targeted the http-frontend on the front deployment.

Tap workers

Renamed the daemonset to {{ .Release.Name}}-worker-tap since having daemonset in the name is redundant.
Replaced the individual fields for resources with an ad-lib block. This will allow setting only some (or none) of the fields.
Replaced the tolerations with an ad-lib block. The default should be that the deployment has no toleration and experienced users with specific use-cases may add some as needed.
Added more customization to the container image definition

Ingress

Moved the ingress and ingressClass out of the tap structure.
Separated the ingress and ingressClass structures to allow for specific values.
Enabling ingressClass will now force using the custom ingressClass, while ingressClass.enabled: false will result in using the value set in ingress.classname

Alright, I've been working on this but it feels like anytime I make a change it get bigger:

helm chart changes require changes in values.yaml
values.yaml is generated by config and uses a configStruct
configStruct defines a bunch of sub structs to define the different aspects of the config
these values cannot be generalized because we're using "defaults" to generate the values file with the default values hardcoded in the go code matching each of these.
can't really do otherwise because we use the user-provided values and add the default or null values for all the fields they didn't fill in
on the subject of resources, usually projects don't specify them to leave that up to the users to figure out instead. I guess you're going for a one-step-everything-works setup that wouldn't need any config. Same applies for tolerations, annotations and labels usually.

Some solutions I'm seeing:

we could add a default value file to fill in all the different values (for example different default resources or images for hub/front/workers) but then what's the point of generating all this using go and not just template them using the helm lib to combine the default yaml and then override them using the customer's value file?
we could add a lot of logic in the helm chart code to account for default values here instead, but it would make the helm chart almost unreadable for anyone unfamiliar with helm trying to debug this
we could add a bunch of go code duplicating the structures but this isn't very DRY

Anyway this is turning out to be a major refactor,


feat(app): labware and modules setup hifi designs

Overview
This PR applies HiFi styling to the ODD's labware and modules setup pages
Closes RCORE-733 and RCORE-734
TODOs:

Setup Instructions modal (still being designed)
Module Mismatch modal (still being designed)
Module Mismatch click behavior (still being designed)
Position iconography

Test Plan

Existing unit tests were modified to expect new designs
Unit tests and storybook stories were made for new components
Also manually tested on both the simulated app and the devkit.

Changelog

Added deck-map icon from Figma
Added Connection Status icon from Figma
Created Floating Action Button component and used it for Map View button
Created Inline Notification component and used it for module mismatch notification
Applied HiFi styling to labware setup page
Applied HiFi styling to modules setup page
Fixed small button styling
Fixed chip styling

Review requests
Please start protocol setup and look at the labware and module setup pages.
Risk assessment
Low risk. No new functionality was added.
Screenshots and Video
note Some behavior was mocked in code  for illustrative purposes and does not make real-world sense, like the latch position icons

https://user-images.githubusercontent.com/2960/235014224-3ee95065-d060-4f11-9469-13c2222b981f.mov
https://user-images.githubusercontent.com/2960/235014336-830b28ee-cdb7-4d22-82e5-e0a74a08de6e.mov

You removed the modal because still being designed?

The design team removed the modal altogether.

You removed the modal because still being designed?

The design team removed the modal altogether.

okay, thank you.


Update Azure db connection string in configurations example

Cocnluded to discard this pr because username is 'user@lakefs-db' in this case
see https://github.com/treeverse/lakeFS/pull/3746#discussion_r932083766


Janitor now uses real user IDs instead of effective user IDs

If runner spawns processes with a different effective UID (e.g. passwd), janitor needs to kill those too

/cc @realtux


Update CHANGELOG and bump version (#5665)

For #

[ ] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR).
[ ] Title summarizes what is changing.
[ ] Has a news entry file (remember to thank yourself!).
[ ] Appropriate comments and documentation strings in the code.
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated.
[ ] Test plan is updated as appropriate.
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed).

Update CHANGELOG.md

Bump versions

Keep 2021.6 ext version

Codecov Report

:exclamation: No coverage uploaded for pull request base (release-2021.05@7e51d85). Click here to learn what that means.
The diff coverage is n/a.

@@                Coverage Diff                @@
##             release-2021.05   #5762   +/-   ##
=================================================
  Coverage                   ?     72%
=================================================
  Files                      ?     402
  Lines                      ?   26828
  Branches                   ?    3912
=================================================
  Hits                       ?   19525
  Misses                     ?    5654
  Partials                   ?    1649


Focus border in find input should contain also the toggle buttons

Right now, this sort of ruins the feeling of an input with options -- it becomes more like an input followed by some toggles

@jrieken -- if you have the time

there you go

@bpasero I made you a reviewer

Nice solution. Merged.


libGL error: failed to load driver

For example:
"libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so:"
"libGL error: failed to load driver: iris"
This error is not caused by the CIGVis itself but is likely due to a version conflict with the shared libraries. More specifically, it may be caused by an unusual setting in the environment variable LD LIBRARY PATH (or DYLD LIBRARY PATH on macOS), which results in the incorrect shared library being loaded first.

You can try to solve this by two methods.
First, set:
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6

Otherwise, you can check your .bashrc or .zshrc file, and comment out the line like export LD LIBRARY PATH....


Issues with Multiple Tabs / Multiple Computers logged in with same account

On opening our ccpUrl (.my.connect.aws/connect/ccp-v2) on multiple tabs, all the states are synced like hold, mute but
we observe that even if we pick the call on Tab 2 , the mic that is used is of the tab which was opened the first, (if we close tab 1 in between a call then the call is lost - we can't hear the other person and they can't hear us)
We also observed that if that ccpUrl page is opened on different computers, but with the same account, again the states are synced!
but even if we pick the call from Computer 2, the microphone used is of Computer 1 because the page was loaded first in computer 1.

Extras (If you can help): we currently have a requirement :
we have embedded ccp inside of our own react app and want to open the call in a new browser tab whenever the user picks up the call from our ui. How can we do this if it's possible.


Default colors for OME Zarr files do not match spectral colors

I think the default color for an emission band, as specified in the .zattrs file, should correspond to the spectral colors if the emission wavelength is in the visible spectrum.
It would be nice if neuroglancer links were also set with these same default colors.

To view in neuroglancer, the process_output.json needs to be  updated with the appropriate color. Creating a hash of viewing colors for this and running it on exisiting datasets is the first step. This can be followed by updating the neuroglancer link generation code and then updating of .zattrs.


WIP of a Unified RAL

Looking for feedback on the results of this primarily.
I'm amazed the checks all passed.

Sorry, but this is one, very large commit! I think we only changed an 8 to a 5 in the imxrtral.py script, then re-generated the RAL. Is that all? If there's more, consider separating the commits for easier review.
From my quick evaluation:

The filesystem is flatter.
Peripherals may have suffixes like v2. It's not entirely obvious that usb_analog_v2.rs corresponds to the 1050 series, but we can find that in the module's comments.
Instances may have obvious suffixes, like 1051_1052_1061_1062_1064.
I still need to specify one RAL feature.
I still cannot specify two or more RAL features.

The instance consolidation looks nifty. The RAL continues to re-export instances under their sane names. As a HAL designer, when I write something like
use ral::usbphy::Instance;

it's not immediately clear that the Instance comes from the usbphy_1011_1015_1021 module instead of the usbphy_1051_1052_1061_1062_1064 module. But, since I know how the RAL works, I can set up conditional compilations that group these chips together, just as they're grouped together by module names. That's how we're expected to create the common HAL, correct?
Is there anything specific you'd like feedback on?

I'm looking at how the RAL script generates the LPUART instances. Here's what it looks like:
$ cd imxrt-ral
$ find . -iname "*lpuart.rs"
./src/imxrt/imxrt1015/lpuart.rs
./src/imxrt/instances/lpuart.rs
./src/imxrt/imxrt1011/lpuart.rs
./src/imxrt/imxrt1021/lpuart.rs

It looks like it's putting the "most general" instances together in instances. Then, it's separating the 1011, 1015, and 1021 instances out because it's identified them as unique.
I'd be curious to see if the 1021 could be part of that "most general" grouping, or if there's a strong reason to keep it separate. And, I'm curous to see if there are dramatic differences between 1011 and 1015.
From a previous, cursory reference manual study, the 1011 and 1015 only have 4 instances; every other variant has 8. When comparing the 1011 to the 1062, I did not notice a difference in register block layout or fields. The auto-generated code might confirm that; both the 1011 and "most general" grouping reference the lpuart_v1 register block.
This might be due to the buggy SVDs...

Yes, the only thing I've changed is in python the family prefix match from :8 to :5 (imxrt), the patch is huge I agree. Mostly to the positive side (lots of removed code).
Some of the peripheral variants (v1/v2/etc) are probably easily unified with some small svd patching and I think that's a worthwhile goal if this is accepted.
Peripheral drivers (the iomuxc, upcoming usb, common hal) can group the feature flag compiles together based on what peripheral type is support by which chips.
IE: in your above example, a future imxrt-usb driver may expose all chips as feature flags, then internally map those to imxrt1062 means use v2 of the register block. The fact that the ral now produces two variants of some peripheral register blocks makes it I think easier to understand which chip uses which version, as its easy to see in the comments.
The thing that keeps this from being  feature additive crate is the pub use lines in lib.rs that imxrtral.py generates for us, I'm not super inclined to change that yet, I think that would require some additional changes to how imxrtral.py generates code.
You could ignore the feature flags and directly use the chip specific Instance static's, but that's probably more of  hassle than a help.

This is a simple change, I plan on iterating on this idea more after we move it out of this repo


texture

when i convert a model to obj so i can use it in this, it doesnt let me switch the material to textured. is this intentional?

same problem here. Did you find a solution ?


Add windows/linux runtime handler for function

Add windows/linux runtime handler for function

Update existing function service plan will be added in later pr.

Codecov Report

Merging #906 into develop will decrease coverage by 0.46%.
The diff coverage is 0%.

@@              Coverage Diff              @@
##             develop     #906      +/-   ##
=============================================
- Coverage       44.1%   43.63%   -0.47%
  Complexity       772      772
=============================================
  Files            141      144       +3
  Lines           5258     5314      +56
  Branches         752      760       +8
=============================================
  Hits            2319     2319
- Misses          2767     2823      +56
  Partials         172      172

Impacted Files
Coverage Δ
Complexity Δ

...dlers/artifact/RunFromBlobArtifactHandlerImpl.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

.../handlers/runtime/LinuxFunctionRuntimeHandler.java
0% <0%> (ø)
0 <0> (?)

...andlers/runtime/WindowsFunctionRuntimeHandler.java
0% <0%> (ø)
0 <0> (?)

...ction/handlers/runtime/FunctionRuntimeHandler.java
0% <0%> (ø)
0 <0> (?)

Continue to review full report at Codecov.

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


@Nullable created -  to allows test null values defined as a String array in @Parameters anotation + BidDecimal autocast

Currently is not possible to test null values defined as a String array in @Parameters. The values are converted to a String representation. This is in quite a lot of situation unwanted. Using @Nullable annotation will be null values converted to the null instead of String "null".
@Test
@Parameters({" null "})
public void shouldBeNull(@Nullable String value) {
    assertThat(value).isNull();
}

Edit:
Would be nice to have BigDecimal auto conversion to make tests a bit more concise.
Before
@Test
@Parameters({"1.00, 0.20"})
public void shouldCalculateVat(String strPrice, String expectedVat) {
		BigDecimal price = new BigDecimal( strPrice );

		BigDecimal actualVat = sut.calculateVat( price );

		assertThat( actualVat ).isEqualTo( expectedVat );
}

Now
@Test
@Parameters({"1.00, 1.25"})
public void shouldConvertToBigDecimalType(BigDecimal first, BigDecimal second) {
        assertThat(first).isEqualTo( new BigDecimal("1.00") );
        assertThat(second).isEqualTo( new BigDecimal("1.25"));
 }
`

I like the @Nullable annotation.
When it comes to BigDecimal conversion I think it should also be implemented as a @Converter.
Can you do it @peterjurkovic ?
And one more thing: extract tests for nullable and bigdecimal to separate test classes.

@jrmichael thanks for your feedback, Sure, I can do it.

By the way, why do you think that BigDecimal should be also implemented as a custom @Param? In my opinion is better to have build-in BigDecimal conversion support, this does not affect existing code and it is a bit more handy and concise.

I was worried about people complaining about different or unknown precision. Therefore I did not want it to be a part of JUnitParams. Now that I learned that precision is derived from the number of digits after decimal separator I am not complaining anymore. Plus it is only 3 line ;)


C#: Collections breaking changes and improvements

C#: Some important Array and Dictionary interface changes

Array now implements IList instead of IList<object, object>.
Dictionary now implements IDictionary instead of IDictionary<object, object>.

C#: Add marshalling support for IEnumerable and IDictionary

Added constructor that takes IEnumerable for Array and IEnumerable<T> for Array<T>.
Added constructor that takes IDictionary for Dictionary and IDictionary<TKey, TValue> for Dictionary<TKey, TValue>.

C#: Support type hints for exported Arrays. Closes #24891

Added the code for Dictionary as well, but it's not yet supported by the Godot inspector.

NOTES:

Array and Dictionary no longer implement IList<object, object> and IDictionary<object, object> respectively. This is a breaking change. I'm not sure if this is actually good considering the differences with the non-generic version of these interfaces. Maybe we should leave them and make IList and IDictionary explicit implementations like the generic versions. Opinions welcome.

There is no support for marshalling/exporting IEnumerable<T> and IDictionary<TKey, TValue> yet. It will require either dynamic or some reflection work to support them.

I made up my mind, Array<T> and Dictionary<T> won't implement IList and IDictionary. PR is good to merge now.

@neikeq Does this allow custom classes implementing IEnumerable/IDictionary to be casted from and to Variants to get RPCed?

Yes, it does. However, keep in mind that this conversion is not cheap. It does a copy of all the elements, converting each of them as well.


zEdit Merge weapons

Describe the bug
I am not sure if this is a bug but I realised that in zEdit merge there is a JS weapon merge but it is not build. Does this merge is safe to use or it was removed due to some errors?
To Reproduce
Go to zEdit Merge tools

Can be ignored


not working with sketch 54.1?

All of a sudden your most excellent plug in is not working for me. Is it possible there is an incompatibility with Sketch version 54.1?

figured out that this issue is basically the same as #171.


[xs] add markdown format of the readme

The readme section at top of data package view page
was not markdown enabled. This commit will enable the
readme section to be viewed as markdown.
Resoles - #270

@subhankarb do we have a small test for this?

Where is de-htmlification as in the issue?
You don't want any markdown at the top of the page -- think about it, it will look really weird to have e.g.

This is a XXX datasets
A sudden head ...
Read more

@rufuspollock Updated the de-htmlify code.


Cannot find module ... @tsndr/cloudflare-worker-jwt/utils

FYI, builds on Cloudflare Pages started failing in the last few days:
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/opt/buildhome/repo/node_modules/@tsndr/cloudflare-worker-jwt/utils' imported from<EMAIL_ADDRESS>
My package.json was: @tsndr/cloudflare-worker-jwt": "^2.2.1. I removed the ^ and builds are working again. I also tried 2.4.3 but saw the same error when running locally.
In case it matters, I use the module format to import the library:
import jwt from '@tsndr/cloudflare-worker-jwt'

Deployment Log:

Success 10:40AM January 20, 2024 (^2.2.1)
Failed 5:42PM January 25, 2024 (^2.2.1)
Success 1:46PM January 27, 2024 (2.2.1)

This started in 2.4.1 when src/utils.ts was introduced. The problem is that tsc outputs the import statement for utils module as:
// index.js
import { ... } from "./utils";

This is incompatible with Node's ESM algorithm, which requires explicit .js extension. A possible fix is to include .js in src/index.ts
// src/index.ts
import { ... } from "./utils.js"

tsc will keep .js in output. However, test cases will fail because jest throws a Cannot find module './utils.js' from 'src/index.ts' error.
Hopefully these info are helpful. I will keep experimenting when i have some more time.

For the record, I'm using<EMAIL_ADDRESS>and "<EMAIL_ADDRESS>

I'm looking into this, sorry for the inconvenience.

Hey guys, I've created a test project, but for me everythings working:
https://github.com/tsndr/cloudflare-worker-jwt-test

same, trying in nuxt: 3.4.3 project

It is not the best fix and one I'm really satisfied with but inlining utils.ts inside index.ts would effectively be enough...

It is happening to us also when running tests in vitest.

Hey guys, I've now added esbuild and released the change with v2.4.6, this should hopefully fix this issue.
@vnphanquang I appreciate you effort with the PR, but I've just switched over from js to ts a little while ago and really like to keep it that way. I think a bundler is the best way forward for now, but I'm also alway open for feedback and suggestions :)

@tsndr thank you. No worries I understand 😀

Thank you very much!!!


Gradle project sync failed.  Error says 'Failed to Resolve...'

Here is the build.gradle (module) :
apply plugin: 'com.android.application'
repositories { maven {  url "https://jitpack.io"  }}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "xyzapplicationsolutions.com.myapp"
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile 'com.github.jjhesk:BringItBackAdvanceSlidingMenu:vX.XX'
}
Here is the error:
Error:(24, 13) Failed to resolve: com.github.jjhesk:BringItBackAdvanceSlidingMenu:vX.XX
Am I putting the dependency and repository lines in the right places?  If so, would like to request some insight into why it might be failing.  I'm using Android Studio 1.1.0

ok forget about using jitpack. Just using maven/jjhesk

Hi,
Looks like vX.XX should be replaced with an actual version. Then it should work.


[FEATURE] Enhancement - Config file cleanup and formal JSON schema

Config file cleanup and formal JSON schema

Adopt a JSON pointer syntax in config file (allow duplicate object naming)
Improve consistency, remove type mutations, ensure multiples are implemented (or remove them until supported)
Config file to become a contract

To enable coding a configuration, my team has been working on a TypeScript library to enable serialization and deserialization of a complete config.json document using TypedJSON. The library is primarily data-objects and enumerations, reverse engineered from the JSON example files (and the code-base and AWS docs). We're nearly finished and would be happy to contribute!

To enable coding a configuration, my team has been working on a TypeScript library to enable serialization and deserialization of a complete config.json document using TypedJSON. The library is primarily data-objects and enumerations, reverse engineered from the JSON example files (and the code-base and AWS docs). We're nearly finished and would be happy to contribute!

This sounds great and we look forward to collaborating.  We'd love to start by taking a look at the library and get your initial thoughts as to an integration approach.

This sounds great and we look forward to collaborating.  We'd love to start by taking a look at the library and get your initial thoughts as to an integration approach.

I've sent an invite for Read permissions to enable you to have a look. We've covered most (90-95%) of the data entities we could identify from the example configurations (including unit tests primarily targeting deserialization). As this is currently a POC we're just starting to create a backlog for proper CI/CD, expanded unit testing including a variety of atypical serialization requirements, and some combination of validations/helper methods to assist consumers in maintaining better referential integrity across key entities. Cheers!

I've sent an invite for Read permissions to enable you to have a look. We've covered most (90-95%) of the data entities we could identify from the example configurations (including unit tests primarily targeting deserialization). As this is currently a POC we're just starting to create a backlog for proper CI/CD, expanded unit testing including a variety of atypical serialization requirements, and some combination of validations/helper methods to assist consumers in maintaining better referential integrity across key entities. Cheers!

As it turns out - we already have a fully defined Typescript schema in the codebase: /src/lib/common-config/src/index.ts

Will be in next MAJOR (not minor release) i.e. v1.5

Shipping in v1.5.0 (version # could change)


BPS profile to ship with the product

Instead of using EI or any external BPS server, WSO2 IS should provide a separate workflow engine (Similar to the WSO2 Identity Server Analytics)

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


Enabling more Stream functionality

This PR is rebased it off of the PR #2586 so that it's easier to see what that PR does.
This is useful when compiling to WASM for the Cloudflare Workers:
https://developers.cloudflare.com/workers/runtime-apis/streams
Added Stable WebIDL:
enabled/ReadableStreamDefaultReader.webidl
enabled/ReadableStreamGenericReader.webidl
Added Unstable WebIDL:
unstable/QueuingStrategy.webidl
unstable/ReadableStreamBYOBReader.webidl
unstable/TransformStream.webidl
unstable/WritableStream.webidl
unstable/WritableStreamDefaultWriter.webidl

Seems reasonable to me! I don't know anything about these APIs myself so I'd basically just be trusting you about the stable/unstable. Was there anything else you wanted to do here before merging though?

Seems reasonable to me! I don't know anything about these APIs myself so I'd basically just be trusting you about the stable/unstable. Was there anything else you wanted to do here before merging though?

@alexcrichton I've had a hard time determining how stable they are. The spec is a living standard and I've been relying on MDN to know if they're 'experimental' or not. After reviewing them again, I'll move them all to unstable as MDN lists the methods of ReadableStreamDefaultReader as experimental.

I believe this is in a good state for merging now.

This is unfortunately a breaking change to the get_reader and get_reader_with_options APIs. Is there a way to avoid that? Or otherwise do you think it's ok to break things?

This is unfortunately a breaking change to the get_reader and get_reader_with_options APIs. Is there a way to avoid that? Or otherwise do you think it's ok to break things?

get_reader and get_reader_with_options are returning unstable types, so this change seems reasonable. We may want to consider a future change that would make these functions unstable due to the return type, but that would cause users to have to enable 'unstable' when they didn't have it before.
In the ReadableStream webidl it has the return type for getReader defined as a ReadableStreamReader:
ReadableStreamReader getReader(optional ReadableStreamGetReaderOptions options = {});
The typedef for ReadableStreamReader is:
typedef (ReadableStreamDefaultReader or ReadableStreamBYOBReader) ReadableStreamReader;
These 2 types didn't exist before and I expect it's choosing Object as the return type because it's the nearest to both in the type hierarchy.
I think it's OK to break this as it's more correct. Users were likely casting from JsValue into either of those unstable types that they hand-rolled in their own project.

Ok seems reasonable to me! This defintely seems like a bug in the code generator though...


Adding Task.Util.exe to the agent

this CLI adds the ability to upload a task to the server
It also includes a generator to create a task folder with the basic files you need for a node task.

This exe is just for convenience. It replaces the need to use the tfx-cli (that hasn't shipped in a while) to upload tasks. It does not currently have the ability to list or get tasks, but that can be easily added. This is just the first step.
Examples
>Task.Util.exe --help
Task.Util 2.999.999
Copyright (C) 2020 Task.Util
  upload
  generate
  help        Display more information on a specific command.
  version     Display version information.

>Task.Util.exe upload --folder-path mytask --pat **** --server https://dev.azure.com/jpricket

Abandoning these changes in favor of the tfx-cli


Can no longer used a licensed Saxon processor with the DITA OT 3.6

If I have a license for Saxon and the Saxon EE libraries in the DITA OT classpath, the XSLT pipeline still runs with Saxon HE.
This constructor:
  org.dita.dost.util.XMLUtils.XMLUtils()

forces a HE configuration:
 final net.sf.saxon.Configuration config = new net.sf.saxon.Configuration();

when instead it could do this:
 final net.sf.saxon.Configuration config = net.sf.saxon.Configuration.newConfiguration();

Having a licensed Saxon is useful for calling various Saxon specific functions.


⚠ Heritage of Faith Christian Church - Gold Coast has degraded performance

In 22dbe1f, Heritage of Faith Christian Church - Gold Coast (https://heritageoffaith.com.au) experienced degraded performance:

HTTP code: 200
Response time: 7077 ms

Resolved: Heritage of Faith Christian Church - Gold Coast performance has improved in d36dc60.


max_signed_tokens_ttl setting for a maximum duration on API tokens

It's currently possible to use /-/create-token to create a token that lasts forever.
Some administrators may wish to have a maximum expiry instead. I should support that with a setting.

This setting will disable the "Token never expires" option:

I'm going for  consistency with max_csv_mb and max_returned_rows and allow_signed_tokens and default_cache_ttl.
So max_signed_tokens_ttl.

I just realized this can't easily affect the datasette create-token command because it doesn't currently accept the --setting option, so it wouldn't know what max_signed_tokens_ttl was.
More to the point: even if it did, someone could abuse their knowledge of the secret to create a signed non-expiring token even on servers that didn't want to support those.
So I actually need to redesign the token format: it needs to store the timestamp when the token was created and the intended duration, NOT the timestamp that the token expires at.
Otherwise it's not possible for servers to enforce max_signed_tokens_ttl - someone could always create a token with a custom expires_at timestamp on it outside of the configured limit.

New token design:
{
  "a": "actor-id",
  "t": "creation timestamp as integer",
  "d": "intended duration in seconds, or blank if no duration set"
}

This is in place of the "e": "expiry timestamp" design I've built so far.


[WIP] Unify the HTML5 canvas-based remote consoles under a single endpoint

We had RBAC features for each remote console type separately, which is pointless as this separation is no longer behavioral. The VMRC console is no longer web-based while all the others are, it also offers way more functionalities than the others.  Therefore, I'm proposing to create an RBAC feature for all the console types based on HTML5 <canvas>. They all offer the same functionality and the user doesn't really has to know which is actually running under the hood, the backend is always capable to select the best fitting one.
The buttons for requesting remote consoles should follow this in the UI, i.e. one button for VMRC and another onr for HTML5-based consoles. Thanks to this it is possible to drop the global setting of a console type for VMs running on VMware providers. The console type for HTML5 will be determined by the provider upon request which will allow us for a better console support both in the ops and the service UI.
I also cleaned up the supports mixin usage in the area, now there's only a single supports_html5_console? call instead of the separate VNC, SPICE and WebMKS ones. The conditions became much simpler and more provider agnostic.
https://bugzilla.redhat.com/show_bug.cgi?id=1532720

@miq-bot add_label providers/console, enhancement, hammer/no, changelog/yes

Confirming I've seen the consoles open with these changes, both in Ops UI and in SUI, connected. :+1:


Use DEPFILE for ninja generators

This is mostly a note for the future. Cmake just added depfile support for add_custom_command and the ninja generator. Hopefully this can be used instead of IMPLICIT_DEPENDS to calculate the dependencies for a PCH when ninja is used instead of make.
https://gitlab.kitware.com/cmake/cmake/merge_requests/66

I fixed it in https://github.com/mkorotetsky/cotire/commit/6c29343d0b4bc67e564ecd8fe287b229032d13b0
Fix was written to work with ndk-r11c, clang and ninja. I had to base my code on old commit because recent repo changes have issue #146

Worked for me after replacing -MMD with -MD and not adding DEPFILE property for the Unix Makefiles, i.e.
if (${CMAKE_GENERATOR} STREQUAL "Ninja") add_custom_command with DEPFILE else () add_custom_command without DEPFILE endif ()


Vector indexing pipeline for Census embeddings

#1112
Adds a Docker+WDL pipeline to build the TileDB-Vector-Search index for each Census embedding. (Excluding NMF for now due to some minor technical issues that will be easier to deal with after future improvements to TileDB-Vector-Search.)
The pipeline launches a powerful instance to build the index for each embedding, and processes the embeddings in parallel. The longest takes 9-10 hours to build (UCE, which has the highest dimensionality). The output is an S3 folder which can be copied into the destination bucket.

Starting out with TileDB-Vector-Index was kind of the obvious initial choice since all the other Census data and embeddings are stored with TileDB

I was actually wondering why the IVF_FLAT over the other index options in the tiledb library.

@ivirshup Ah, that one's easy. When we initially scoped this, IVFFlatIndex was the only real choice (FlatIndex being a strawperson exhaustive-search implementation). I see they've added a newer VamanaIndex. I'll ask the TileDB developer if that'd be interesting in the future for our Census embeddings, but I don't think we need to do a deep dive on it right now. For future-proofing, it seems like a good idea to specify the index type in the manifest JSON we discussed with @ebezzi this morning though!


add shortcut to create new Aurelia gist

cc @egeland

Yep, I just thought it'd be cool to have a "set up Aurelia" button, so gist-run will become the go-to place to demonstrate Aurelia.. :smile:

i was thinking about having "New" button similar to a dropdown button. the difference is it would display a menu on hover. the menu can show for now only "new Aurelia gist". the button will still create same gist as today on click. too complicated maybe? thoughts?

For the next time I come here looking for a link - https://gist.run/?id=883568d7c8e2add9ed393150100f4744

Would that also be possible with TypeScript?

Also wondering if TypeScript can be supported

TypeScript could possibly be supported but I think it would be a fundamental change to gist.run so I'm not sure it will be supported any time soon.  I think a pull request would be accepted though if you wanted to add TypeScript support.

I'm working on a switch from the ace editor to the monaco editor. Part of that work is built-in babel and typescript support.


THRIFT-3706 : Implement protocol multiplexor in c_glib

This patch implements protocol multiplexor for the client. For the server there's a need for a processor that currently we don't have. So a test of this can only be tested against other language that already has this in place. We did testing against Java.
Example of use:
			/*
			 * We will use binary encoding
			 */
			ThriftBinaryProtocol *binary_protocol= g_object_new (THRIFT_TYPE_BINARY_PROTOCOL,
					"transport", manager->transport,
					NULL);

			/*
			 * FIXME Transport in the multiplexed should be got from binary_protocol
			 */
			ThriftMultiplexedProtocol *multiplexed_protocol= g_object_new (THRIFT_TYPE_MULTIPLEXED_PROTOCOL,
					"transport", manager->transport,
					"protocol", binary_protocol,
					"service-name", "MyService",
					NULL);

@gadLinux could you rebase this to the current master ?

El 05/03/16 a las 05:47, Aki Sukegawa escribió:

@gadLinux https://github.com/gadLinux could you rebase this to the
current master ?
—
Reply to this email directly or view it on GitHub
https://github.com/apache/thrift/pull/921#issuecomment-192568249.

Please use this one.
https://github.com/apache/thrift/pull/927


Update behind_proxy.md: How to overcome TLS/SSL validation issues on …

…https connections
Describe your changes
Issue ticket number and link
Checklist before requesting a review

[ ] I have performed a self-review of my code
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics?
[ ] Will this be part of a product update? If yes, please write one phrase about this update.

I also added a small section in the C++ SDK readme (as we currently have that issue there)


Store counts of edge types in graph schema

WIP.

I don't think this is worth the effort, which could be better spent elsewhere.


Basic front end page was created with the top bar and the working area

Description
This branch adds the top bar with logo - menus and the working area
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ X ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[ ] Complete, tested, ready to review and merge
[ X ] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

How Has This Been Tested?

[ ] Test A
[ ] Test B

Checklist

[ X ] My code follows the style guidelines of this project
[ X ] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[ ] 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
[ X ] There are no merge conflicts

This is not finished yet


core::String alias to be replaced with std::String

To remove confusion use standard library namings.

Or maybe..


Possible Bug - Varying session run times when parallelized across GPUs on one node

Hello tensorflow team!
I have been trying to parallelize my 3D convolution network across 2 GPUs on the same node (using data parallelism), and have found that some of my session runs took significantly longer than others.  Upon closer investigation using your timeline feature, I found that sometimes GPU1 would wait a certain amount of time before starting to run its convolutions even as GPU0 was happily chugging along. In the most extreme case, execution would happen essentially sequentially, doubling my runtime!
I am attaching screenshots of my timelines from three sessions to show you what I mean...
In the first one, everything is fine, it is executing both towers in parallel:

In the second, I see the "sequential" behaviour:

In the last one, I see something in between:

I know this happens even when I am not logging metadata because I still see a large spread of runtime distributions without logging on (see parallel-nometadata.txt at the bottom).  Also, dumping the GraphDef proto at each step tells me that the ops are correctly assigned to the different GPUs (I have attached those, as well as my timeline files, at the bottom).
I actually briefly talked about this with @mrry in person a little over a week ago, and we did not find anything obviously wrong at first glance.  Any help you could provide would be much appreciated!
What related GitHub issues or StackOverflow threads have you found by searching the web for your problem?
I have not found any related Github or StackOverflow threads.  I have been using the Timeline profiling feature as described here.
Environment info
Operating System: Ubuntu 14.04.5 LTS (running in a singularity container on a CentOS 6.7 host).
Installed version of CUDA and cuDNN:
I am using CUDA 8.0 with NVIDIA driver 367.48, and cuDNN v5.1 .
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
libOpenCL.so
libOpenCL.so.1
libOpenCL.so.1.0
libOpenCL.so.1.0.0
libcublas.so
libcublas.so.8.0
libcublas.so.8.0.45
libcublas_device.a
libcublas_static.a
libcudadevrt.a
libcudart.so
libcudart.so.8.0
libcudart.so.8.0.44
libcudart_static.a
libcudnn.so
libcudnn.so.5
libcudnn.so.5.1.5
libcudnn_static.a
libcufft.so
libcufft.so.8.0
libcufft.so.8.0.44
libcufft_static.a
libcufftw.so
libcufftw.so.8.0
libcufftw.so.8.0.44
libcufftw_static.a
libcuinj64.so
libcuinj64.so.8.0
libcuinj64.so.8.0.44
libculibos.a
libcurand.so
libcurand.so.8.0
libcurand.so.8.0.44
libcurand_static.a
libcusolver.so
libcusolver.so.8.0
libcusolver.so.8.0.44
libcusolver_static.a
libcusparse.so
libcusparse.so.8.0
libcusparse.so.8.0.44
libcusparse_static.a
libnppc.so
libnppc.so.8.0
libnppc.so.8.0.44
libnppc_static.a
libnppi.so
libnppi.so.8.0
libnppi.so.8.0.44
libnppi_static.a
libnppial.so
libnppial.so.8.0
libnppial.so.8.0.44
libnppicc.so
libnppicc.so.8.0
libnppicc.so.8.0.44
libnppicom.so
libnppicom.so.8.0
libnppicom.so.8.0.44
libnppidei.so
libnppidei.so.8.0
libnppidei.so.8.0.44
libnppif.so
libnppif.so.8.0
libnppif.so.8.0.44
libnppig.so
libnppig.so.8.0
libnppig.so.8.0.44
libnppim.so
libnppim.so.8.0
libnppim.so.8.0.44
libnppist.so
libnppist.so.8.0
libnppist.so.8.0.44
libnppisu.so
libnppisu.so.8.0
libnppisu.so.8.0.44
libnppitc.so
libnppitc.so.8.0
libnppitc.so.8.0.44
libnpps.so
libnpps.so.8.0
libnpps.so.8.0.44
libnpps_static.a
libnvToolsExt.so
libnvToolsExt.so.1
libnvToolsExt.so.1.0.0
libnvblas.so
libnvblas.so.8.0
libnvblas.so.8.0.44
libnvgraph.so
libnvgraph.so.8.0
libnvgraph.so.8.0.44
libnvgraph_static.a
libnvrtc-builtins.so
libnvrtc-builtins.so.8.0
libnvrtc-builtins.so.8.0.44
libnvrtc.so
libnvrtc.so.8.0
libnvrtc.so.8.0.44
stubs

I installed tensorflow using the 0.11.0rc2-gpu tag on docker hub.
If possible, provide a minimal reproducible example (We usually don't have time to read hundreds of lines of your code)
Here is the code I used to generate all the data I am sharing.
import os
import time
import timeit

import google
import numpy as np
import tensorflow as tf

grid_size = 9
channel_size = 4
batch_size = 2**9
num_convs = 8
log_metadata = True
towers = 2
num_train_batches = 100

def define_model(towers):
    tower_outs = []
    for i in range(0, towers):
        with tf.device('/gpu:{:}'.format(i)):
            with tf.name_scope('TOWER_{:}'.format(i)):
                tower_outs.append(define_tower(i))
                tf.get_variable_scope().reuse_variables()
    return tower_outs

def define_tower(gpu_num):
    x = tf.placeholder(
        tf.float32,
        shape=[None, grid_size, grid_size, grid_size, channel_size],
        name='grid')

    num_inputs = channel_size
    for i in range(num_convs):
        with tf.variable_scope("conv{:d}".format(i)):
            weights = tf.get_variable(
                "weights",
                [3, 3, 3, num_inputs, 32])
            x = tf.nn.conv3d(x, weights, [1, 1, 1, 1, 1], 'SAME')
            num_inputs = 32

    return x

if __name__ == "__main__":

    # Define model.
    tower_outs = define_model(towers)

    # Create inputs.
    feed_dict = {}
    for i in range(towers):
        feed_dict['TOWER_{:}/grid:0'.format(i)] = np.random.rand(
            batch_size, grid_size, grid_size, grid_size, channel_size)

    # Prepare for logging.
    if log_metadata:
        run_options = tf.RunOptions(
            trace_level=tf.RunOptions.FULL_TRACE,
            output_partition_graphs=True)
        run_metadata = tf.RunMetadata()
        kwargs = {'options': run_options,
                  'run_metadata': run_metadata}

        curr_time = time.strftime("%Y-%m-%d-%H-%M-%S")
        if log_metadata:
            out_dir = curr_time
            os.mkdir(out_dir)
    else:
        kwargs = {}

    # Run model.
    train_learning_times = []
    with tf.Session(config=tf.ConfigProto(allow_soft_placement=True)) as sess:
        tf.initialize_all_variables().run()
        for i in range(num_train_batches):
            learning_time_start = timeit.default_timer()
            _ = sess.run(tower_outs, feed_dict=feed_dict, **kwargs)
            train_learning_times.append(timeit.default_timer() -
                                        learning_time_start)

            if log_metadata:
                from tensorflow.python.client import timeline
                tl = timeline.Timeline(run_metadata.step_stats)
                ctf = tl.generate_chrome_trace_format()
                with open('{}/timeline_parallel_{}.json'
                          .format(curr_time, i), 'w') as f:
                    f.write(ctf)
                with open('{}/run_metadata_{}.txt'
                          .format(curr_time, i), 'w') as f:
                    f.write(
                        google.protobuf.text_format.MessageToString(
                            run_metadata))

    # Print stats
    print 'Histogram counts: {}'.format(
        np.histogram(train_learning_times[2:])[0])
    print 'Histogram edges: {}'.format(
        np.histogram(train_learning_times[2:])[1])
    print 'Median time for learning: {:5.2f}'.format(
        np.median(train_learning_times))

What other attempted solutions have you tried?
No other solutions tried.
Logs or other output that would be helpful
Dump of GraphDef and timeline json for each of 100 runs.
2016-11-05-18-52-32.zip
Output of code with log_metadata set to True:
parallel.txt
Output of code with log_metadata set to False:
parallel-nometadata.txt

Thanks for making such a detailed bug report, @raphtown!
The first thing I noticed when looking at the timelines is that all of the GPU kernel profiling events appear to be running on /gpu:0... even if they've been issued by the TensorFlow device /gpu:1. However, this seems to be a red herring, because there's a TODO comment in gpu_tracer.cc that reveals that these prefixes are inaccurate with multiple devices. @prb12, do you have a sense of how easy it would be to plumb the appropriate information through here? (I'm guessing that we need to add some reverse map from device contexts (or some other object that we get in a CUPTI callback) back to TensorFlow devices....)
The variability in runtime appears to be caused by (usually) /gpu:1 issuing its first kernel a long time after /gpu:0 starts issuing kernels... and sometimes /gpu:1 doesn't get started until /gpu:0 is finished (and has sync'd its stream). This suggests to me that there's some mutex (in the stream executor? the GPU driver?) being held, or a single worker thread is running a blocking operation and prevent the other device from issuing kernels. I'm not sure how likely either of these scenarios is... @zheng-xq, do you have any ideas?

@mrry and I had a look at some of these traces this morning.  There definitely seems to be a problem here, and I'm not sure when it crept in.
First, @mrry is correct that the gpu tracer in the open source tree is hardwired to report /gpu:0 - this should be a simple fix, which can probably be done at the same time that GPU tracing is enabled for the distributed runtime.
Getting back to the bug - there does appear to be some unexpected and undesirable serialization of op dispatch on the GPU devices here (e.g. the dispatch of the Conv3D ops on different GPU devices do not appear to run concurrently!).  I'm not 100% sure what is going on, but I do know that there were some changes to the threadpool usage for GPU op dispatch a while ago (to deliberately avoid using multiple threads to enqueue ops on the same GPU stream).
Also, in the build you are using, the _SINK NoOp (which is the last op to run on each device) calls StreamExecutor::SynchronizeAllActivity to ensure that all work is done before turning off the GPU tracer.  Looking at the implementation, this does actually appear to a) synchronize the CUDA Context and b) calls BlockOnThreadExecutor(background_threads_.get()); on an internal threadpool.
In later builds the position of this call to SyncAll() had been moved slightly - but I don't think this would affect the behaviour (it would make the Timeline look slightly different - in that the _SINK NoOp would not appear to take as long)
It might be worth trying to explicitly increase the inter-op-parallalelism, (in your ConfigProto) but I suspect the problem is more subtle than this....
What concerns me is that one of your traces has all the ops on GPU1 executing after all the ops on GPU have completed.  In this case there is actually a dependency of the GPU1 Conv3D on a 'read' of a Variable which is assigned to GPU0.  This will actually require a device to device DMA, and involves multiple GPU streams and some CUDA Event synchronization.  None of this is currently visible in the Timeline (and in fact I don't even see a MEMCPYD2D!)   This worries me a little (and I really think that we really need to change the instrumentation for Send/Recv ops so that they are more visible in the Timeline!)

Thanks for making such a detailed bug report, @raphtown!

+1     It's always a pleasure to have a clear bug report with simple repro code.

Hello @mrry, @prb12, and thank you for taking a look into this!
Varying the inter_op_parallelsim_threads field in the ConfigProto doesn't seem to do much, except when I set it very high (e.g. 1000) and then more of the runs execute sequentially.
Maybe this will help you debug the issue, but it seems like the number of CPU cores available has a direct impact on if the GPUs execute sequentially or in parallel (I am using the SLURM allocation system which lets me specify how many CPUs to give).  The results I gave in my original bug report were with 2 CPUs available total.  If I increase this amount to 4 CPUs, then the issue disappears.  If I decrease the amount to 1 CPU, then it seems that all runs execute sequentially (worsening the problem).
Lastly, I also tested this with 0.9.0, which displayed similar issues.

Also, yes, I would definitely love to have better instrumentation of the Send/Recv ops as well as GPU tracing for distributed tensorflow (which is my next step once I get the single-node case working)!

Maybe this will help you debug the issue, but it seems like the number of CPU cores available has a direct impact on if the GPUs execute sequentially or in parallel (I am using the SLURM allocation system which lets me specify how many CPUs to give). The results I gave in my original bug report were with 2 CPUs available total. If I increase this amount to 4 CPUs, then the issue disappears. If I decrease the amount to 1 CPU, then it seems that all runs execute sequentially (worsening the problem).

I'm glad you mentioned this.  We were looking at your traces earlier today and very bemused as to why the threadpool dispatching GPU ops appeared to be behaving as though there was only 1-2 threads!  (somebody apparently removed the log message which tells us how many worker threads are configured in each threadpool - but it defaults to the number of "physical" cores.)
I can totally understand how this problem occurs with only a couple of threads.  Your workload is very sensitive to the order of op dispatch (due to the way that GPU to GPU memcpys are currently implemented).  If there are only a tiny number of threads available then the executor for one GPU device manages to get all of its ops enqueued on the GPU stream before the other even gets a look in.  The D2D memcpys actually include a stream synchronization - so the destination device of the transfer ends up waiting for all of the previously dispatched ops on the other GPU.
The exact behavior is non-deterministic, but it takes very little time to enqueue a handful of ops on GPU0, and if all threadpool workers are busy doing anything else for even a millisecond then it's game over for GPU1!
I think we probably need to improve the D2D transfer code path, but for now I would recommend using at least 4 or 8 cores in a multi-gpu setting (and probably more!)

Hello @prb12, I think I see what you are saying.  When we enqueue GPU1's read of a convolution layer's weights (in this case, from GPU0), it must wait for all of GPU0's previously enqueued ops to finish.
I can see even in my "parallel" cases (such as the first screenshot above) that some of the later GPU1 reads are delayed and wait for GPU0 to finish a couple conv layers, but this is not an issue because GPU1 has enough computation to do in the mean time.
The nodes I am using have 16 CPUs for 8 GPUs, so I assume this problem will not completely go away but will most likely be minimized for now.
Thank you for being so responsive!

The nodes I am using have 16 CPUs for 8 GPUs, so I assume this problem will not completely go away but will most likely be minimized for now.

Yes - you are right.
The only way to get nice parallelism is if all of the Variable read and Send ops on GPU 0 and the Recv ops on GPU1 issue before any of the Conv ops start getting enqueued on GPU0.  This is a bit of a lottery currently!
@zheng-xq and I talked about a possible workaround this morning.... but it would require recording a CUDA event for each of the Send ops on the source GPU so that the dest GPU could wait for the appropriate point in the execution stream.  Previously we've considered this too expensive.

It does indeed seem like a tricky problem to get the reads all synced up properly.  In any case, after running some tests, it appears the problem is minimized for my 16 CPU / 8 GPU setup.  Assuming there is no further follow-up needed on the tensorflow team's end, I would be fine with closing this issue for now.
Thanks for the help :)

Do you see any difference if you keep the variables in CPU?
On Saturday, November 12, 2016, raphtown<EMAIL_ADDRESS>wrote:

It does indeed seem like a tricky problem to get the reads all synced up
properly. In any case, after running some tests, it appears the problem is
minimized for my 16 CPU / 8 GPU setup. Assuming there is no further
follow-up needed on the tensorflow team's end, I would be fine with closing
this issue for now.
Thanks for the help :)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/5416#issuecomment-260166949,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABr0fNLPkiaX67Ck3_qUmN2ar_x4Reevks5q9padgaJpZM4KqXs2
.

--
Sergio

Is there an issue tracking the bug in the tracing code that incorrect reports other GPUs under /gpu:0? this can be quite misleading for people looking at profiling results
on the master branch this looks to be a problem still https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/common_runtime/gpu/gpu_tracer.cc#L566

@mortada I am closing this based on the original bug.  For the incorrect reports of GPUs issue please open another github issue.  That will make it easier to track and restart the thread.  Thank you.


Yara has moved.   Build fails.

The Yara Project has been moved from Google Code to GitHub.
easybutton-singlehost.sh fails to create makefile.   Project path requires updating.

Elasticsearch version:
Moloch version:
OS name and version:
Provide logs, stack traces and steps to reproduce:

Did a temp update to fix now, need to build yara from github in future.


Changing theme at runtime not working

Hi,
I'm trying to change the theme at runtime but when I apply the new theme by replacing .xaml resources the SideNavigation shows no items.
Before changing theme

After changing theme

In app.xaml I have
                <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/Generic.xaml" />
                <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" />
                <ResourceDictionary Source="pack://application:,,,/MaterialDesignExtensions;component/Themes/MaterialDesignDarkTheme.xaml" />

This is the function I use to change theme
        public void SetLightDark(bool isDark)
        {
            //new PaletteHelper().SetLightDark(isDark);

            var resources = Application.Current.Resources.MergedDictionaries;

            foreach (var res in resources)
            {
                if (res.Source != null)

                Console.WriteLine(res.Source.AbsolutePath);
            }

            var existingResourceDictionary = Application.Current.Resources.MergedDictionaries
                                            .Where(rd => rd.Source != null)
                                            .SingleOrDefault(rd => Regex.Match(rd.Source.OriginalString, @"(\/MaterialDesignExtensions;component\/Themes\/MaterialDesign((Light)|(Dark))Theme)").Success);

            if (existingResourceDictionary == null)
                throw new ApplicationException("Unable to find Light/Dark base theme in Application resources.");

            var source = $"pack://application:,,,/MaterialDesignExtensions;component/Themes/MaterialDesign{(isDark ? "Dark" : "Light")}Theme.xaml";
            var newResourceDictionary = new ResourceDictionary() { Source = new Uri(source) };

            Application.Current.Resources.MergedDictionaries.Remove(existingResourceDictionary);
            Application.Current.Resources.MergedDictionaries.Add(newResourceDictionary);
        }

Example project to reproduce the problem
TestMaterialExtensions.zip

@DenZuck Changing the theme at runtime has the side effect that the resources of the controls will be removed too. I will fix this issue with the next release.

Ok, thanks.
I have noticed that if I declare m_navigationItems as ObservableCollection and add items after the menu is rendered, when I refresh the NavigationItems field I get errors:
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionBackground; DataItem=null; target element is 'Border' (Name=''); target property is 'Background' (type 'Brush')
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionForeground; DataItem=null; target element is 'ContentControl' (Name=''); target property is 'Foreground' (type 'Brush')
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionForeground; DataItem=null; target element is 'TextBlock' (Name=''); target property is 'Foreground' (type 'Brush')
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionBackground; DataItem=null; target element is 'Border' (Name=''); target property is 'Background' (type 'Brush')
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionForeground; DataItem=null; target element is 'ContentControl' (Name=''); target property is 'Foreground' (type 'Brush')
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionForeground; DataItem=null; target element is 'TextBlock' (Name=''); target property is 'Foreground' (type 'Brush')

I have another question, is there a way to abort the navigation? Suppose user is in Item1 that require data to be saved. When user click in item2 it would be great to show a dialog box "save data?" with buttons YES, NO, CANCEL. If user press CANCEL no navigation should be happen.

@DenZuck Hi

I uploaded a pre-release some moments ago solving the bug concerning the theme change at runtime. I introduced the helper MaterialDesignExtensions.Themes.PaletteHelper to do all the necessary stuff to change the theme. It is like the one of Material Design in XAML. You can use it to change the theme with one line of code.

Abort navigation: SideNavigation has a WillSelectNavigationItemEvent event, a WillSelectNavigationItemCommand command and a WillSelectNavigationItemCallbackAsync callback. All of them will be raised/called right after selecting an item and before doing the navigation. All of them provide a way to abort the navigation. Have a look at NavigationViewModel.cs and NavigationControl.xaml.cs of the demo.

I hope to find some time to check the error with NavigationItems soon.

@DenZuck
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='MaterialDesignExtensions.Controls.SideNavigation', AncestorLevel='1''. BindingExpression:Path=SelectionBackground; DataItem=null; target element is 'Border' (Name=''); target property is 'Background' (type 'Brush')

is caused by old items of the list. They were removed from their ItemsControl, but the item template is still trying to bind to it. There is no visual parent control anymore and WPF logs this as warning/error in debug mode. I do not know how to prevent this behavior. However it is harmless, because WPF already catches it. See the following two links:

https://stackoverflow.com/questions/47391020/cannot-find-source-for-binding-with-reference-relativesource-findancestor
https://weblogs.asp.net/akjoshi/resolving-un-harmful-binding-errors-in-wpf

@spiegelp hi,

I've tried theme changing and it works perfectly
I'll have a look at the event and callbacks
Ok, as you said it's just an harmless worning

Thanks for the support.


major refactor for 0.4.0

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2212 of 2219 (99.68%)  changed or added relevant lines in 57 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+9.7%) to 99.56%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pygod/detector/base.py
183
184
99.46%

pygod/test/test_utility.py
35
36
97.22%

pygod/detector/scan.py
72
74
97.3%

pygod/utils/utility.py
72
75
96.0%

Files with Coverage Reduction
New Missed Lines
%

pygod/test/test_utility.py
1
94.74%

Totals

Change from base Build<PHONE_NUMBER>:
9.7%

Covered Lines:
2489

Relevant Lines:
2500

💛  - Coveralls

Great effort! I have two small questions regarding the testing flow and readme. After clarifying them, we can merge the PR and release the new version.

Thanks for your review. The mentioned problems are resolved in the latest commit. If there are no further question, please help me to approve the PR.


Redundant deployment of packages due to content-package-maven-plugin

Expected Behaviour
Archetype should deploy the "all" package only
Actual Behaviour
Each package which has the content-package-maven-plugin as a build step will be deployed to the instance redundantly before the "all" package
Reproduce Scenario (including but not limited to)

Shut down your AEM instance
Execute a mvn clean install -PautoInstallPackage on the main project
It will fail on com.mysite:mysite.ui.apps:content-package while connecting to an aem instance.
However it should not fail here, it should fail in the "all" package

Platform and Version
Windows, Archetype 25, Maven 3.6.3
Sample Code that illustrates the problem

Logs taken while reproducing problem
Failed to execute goal com.day.jcr.vault:content-package-maven-plugin:1.0.2:install (install-package) on project mysite.ui.apps: Connection refused: connect

@B3r , as described in https://github.com/adobe/aem-project-archetype/tree/master/src/main/archetype#how-to-build, the archetype will setup two profiles for deploying packages:

autoInstallPackage - for individual package deployment, skips installing all
autoInstallSinglePackage - for container (all) package deployment

I am sorry, should have read the manual completely 😕


JSON API 1.0

This marks the first stable release of JSON API. Any future changes to the base spec will be backward compatible.
Thanks to our wonderful community of contributors for guiding JSON API to this point!

Awesome! Thanks to you, @steveklabnik, and @wycats for working so long to shepherd this to 1.0!
(Now the fun starts of updating my library to be compatible with the new spec :))

Will review this in the morning 😊😊😊

Fwiw—and I definitely don't mean to draw this out any longer than necessary—I do think we should settle #379 before we officially hit 1.0, as giving clients certainty around the meaning of resource isn't something we'll be able to change later.

Will review this in the morning

@steveklabnik absolutely... no need to rush after all this time. Please thoroughly review the commits pushed by myself and @wycats tonight.

Please also keep in mind that hitting 1.0 rules out any further enhancements that require new reserved keys in resource objects. Notably affected: #383. To sidestep the problem altogether: #313.

Added a few more issues to the 1.0 milestone which we can review in detail before tagging.
Gotta fly for now :airplane:

I humbly request to also consider the issue #415 (Attributes of to-many relationships) for inclusion to 1.0.

I don't think #415 is blocking 1.0.
That said, clauses about extra keys are starting to pop up all over the place, so I've filed PR #421 to move them all under a simple set of global rules. This also handily deals with #415.

@bintoro Thanks! Your PR #421 made me reconsider #415.
I hope there is still time left to suggest improvements for 1.0. If at all possible, I would like to have a chance to prepare a PR to present my proposal in #415 in a more clear form. I will definitely be able to do it by this Sunday, March 8.

This a teeny bit premature, closing for now.


Tensorflow go installation fail (cannot find import)

Please make sure that this is a build/installation issue. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:build_template
System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 20.04
TensorFlow installed from (source or binary):
TensorFlow version:
Python version: 3.8
Installed using virtualenv? pip? conda?:
Bazel version (if compiling from source): 3.1
GCC/Compiler version (if compiling from source):9.3
CUDA/cuDNN version:
GPU model and memory:

Describe the problem
I have installed C , following the instructions from https://www.tensorflow.org/install/lang_c and when i ran:                       go get github.com/tensorflow/tensorflow/tensorflow/go
I get the following error:
../github.com/tensorflow/tensorflow/tensorflow/go/saved_model.go:25:2: cannot find package "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto" in any of:
/usr/local/go/src/github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto (from $GOROOT)
/home/nyein/go/src/github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto (from $GOPATH)
I tried following this fix here at https://github.com/tensorflow/tensorflow/issues/14546#issuecomment-347433966 and I checkout from r1.11 and I am getting this error now:
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_DeviceListCount': /tmp/go-build/cgo-gcc-prolog:115: undefined reference to TF_DeviceListCount'
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_DeviceListMemoryBytes': /tmp/go-build/cgo-gcc-prolog:136: undefined reference to TF_DeviceListMemoryBytes'
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_DeviceListName': /tmp/go-build/cgo-gcc-prolog:157: undefined reference to TF_DeviceListName'
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_DeviceListType': /tmp/go-build/cgo-gcc-prolog:178: undefined reference to TF_DeviceListType'
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_SessionListDevices': /tmp/go-build/cgo-gcc-prolog:234: undefined reference to TF_SessionListDevices'
/usr/bin/ld: $WORK/b032/_x007.o: in function _cgo_d969e426e2e3_Cfunc_TF_DeleteDeviceList': /tmp/go-build/cgo-gcc-prolog:62: undefined reference to TF_DeleteDeviceList'
collect2: error: ld returned 1 exit status
Can someone point me to right right direction on fixing this problem?

Try checking out v2.1.0 and run the go get command again. To verify try the go test command with the same endpoint

I tried checking out v2.1.0 and it does not work either. But then my test successfully build after I changed the tensorflow C to version 1.15. Does it mean that tensorflow-go is incompatible with tensorflow-2?

@plyte,
Can you please try Building Tensorflow with latest version of Tensorflow, i.e., 2.3 and let us know how it goes. Thank you!

@rmothukuru oh yeah tensorflow c 2.3.0 as of today works with tensorflow v2.1.0

@nyeinsoe26 can you run the go get again, but include a -v in your declaration aka:
go get -v github.com/tensorflow/tensorflow/tensorflow/go

nyein@nyein:~/Downloads$ ./hello_tf
Hello from TensorFlow C library version 2.3.0
nyein@nyein:~/Downloads$ go get -v  github.com/tensorflow/tensorflow/tensorflow/go
github.com/tensorflow/tensorflow (download)
cannot find package "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto" in any of:
/usr/local/go/src/github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto (from $GOROOT)
/home/nyein/go/src/github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto (from $GOPATH)
It seems I am still having this issue with tensorflow C 2.3.0. Its working fine for me with tensorflow C 1.15

Oh sorry I didnt read the above messages clearly. I checked out from v2.1.0, my test build successfully now.
nyein@nyein:~/go/src/github.com/tensorflow/tensorflow/tensorflow/go$ go test github.com/tensorflow/tensorflow/tensorflow/go
github.com/tensorflow/tensorflow/tensorflow/go
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 851 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 1959 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2329 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2517 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2732 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2733 (>= sh_info of 2)
github.com/tensorflow/tensorflow/tensorflow/go.test
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 851 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 1959 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2329 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2517 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2732 (>= sh_info of 2)
/usr/bin/ld: /usr/local/lib/libtensorflow.so: .dynsym local symbol at index 2733 (>= sh_info of 2)
ok  	github.com/tensorflow/tensorflow/tensorflow/go	0.152s
This is with tensorflow C 2.3.0. It works fine after checking out from v2.1.0. Thank you for all the help @plyte  @rmothukuru

🎉 🎈 🎉
Glad to help! Good luck with your tensorflow/golang adventures!

Thanks. Since this is resolved, I will be closing the issue.


Typescript support, performance optimization and browser friendly version (no source-map)

Hi,
I use css for multiple of our projects and I have an issue with the source-map support.
Indeed, due to Webpack 5 and some projects that can't eject from create-react-app, these teams couldn't use CSS (fs can't be polyfilled because Webpack config is not available if you don't eject.).
To solve the issue, I started to fork the project locally and remove the source-map support.
While doing that work I also rewrote some parts of it, moving the project to Typescript and increasing the performance by about 30% in some cases.
Before:
css parse - small x 1,675 ops/sec ±1.00% (89 runs sampled)
css parse - large x 20.37 ops/sec ±1.31% (38 runs sampled)
css parse - huge x 3.17 ops/sec ±2.24% (12 runs sampled)
After:
css parse - small x 2,115 ops/sec ±0.96% (94 runs sampled)
css parse - large x 22.91 ops/sec ±2.02% (42 runs sampled)
css parse - huge x 3.57 ops/sec ±4.45% (13 runs sampled)

How could I contact you (member of rework) to discuss about importing the changes?
@dead-horse @fengmk2 @joakimbeng @jxson @kevva @SlexAxton @tj

A PR is generally the recommended route for this

Here is the fork I created: https://github.com/adobe/css-tools
I will release soon a version on npmjs.

@holblin Cool. Make you can hit up angular team to use your package instead of reworkcss

Great package @holblin , thank you so much.


Loop Unknown Fields

First, thanks for documenting this! I've been working with Serato's GEOB objects for a while, hoping to contribute some to your findings.
There are 8 bytes after the endPosition for a loop marker that I have yet to identify.

This is followed by to empty bytes (0, 0). This leads me to believe the bytes in the above are null-terminated, follow by a spacer to the index uint8.
I'm hoping this could become a discussion as to what this might be. Can you confirm you have the same values for this section of the loop marker?

Yes. For some reason I forgot to add them in the table in docs, but these 8 bytes are present for me as well:

Sorry for late answer btw, looks like I missed the notification.
I think these values might a big-endian integer, then a single-byte value and then a three-byte color code. If we're Interpreting \x27\xaa\xe1 as a color, it's some kind of blue, similar to the (currently non-changeable) color of saved loops. I'll have to test this hypothesis if I find the time.

\x27\xaa\xe1 is indeed the loop color. I converted the sample file to AAC (which writes marker data to an XML file in the _Serato_/Metadata directory instead of file tags). This file has the following XML tag:
<Loop type="3" index="0">
  <Position>4712</Position>
  <Color>2599649</Color>
  <LpPos>6799</LpPos>
  <LpEnable>0</LpEnable>
  <LpLocked>0</LpLocked>
</Loop>

And:
>>> hex(2599649)
'0x27aae1'