Add support for Swift Package Manager

Xcode 11 introduce the support for Swift Package Manager (SwiftPM).
it supports for not only Swift files, but also the C/C++ files.
So, SVProgressHUD should be supported. And I did this.
Add Package.swift and Add include folder for (Swift Package Manager with a Mixed Swift and Objective-C)
[Use Symlinks]
It requires that we provide symlinks to headers we want to make public.

This looks good! Anything preventing it from being merged?

Nothing can stop us. 😁

I would like to use SPM, so I would like to request a merge.
Is there any reason why it can't be merged?

Any idea when this could be merged??

All reviewers approved.
When will it be merged?

I've updated the component and addressed several bugs. Please review version 2.3.0, and should you find any remaining issues, your feedback would be greatly valued.


Video stream not resized on Android

The video stream is not resized into the frame on the Android HA Dashboard. It worked fine and I supposed it was going wrong since the last update. Probably related to this change: https://github.com/AlexxIT/WebRTC/issues/21 ?

The strange part is is that it works fine on Windows Chrome:

I've tried to experiment with the style parameters, like this:
style: "video {object-fit: cover; object-position: left top;}"
I tried scale-down, cover, contain, fill but all without the desired effect
The code I use in the dashboard is:
  - icon: mdi:cctv
    type: custom:vertical-layout
    theme: noctis
    layout:
      max_cols: 1
    cards:
      - type: custom:webrtc-camera
        url: rtsp://xxxx@xxxx:88/videoMain
      - type: custom:webrtc-camera
        url: rtsp://xxxxx@xxxx:554/videoMain

try to add in your lovelace
 digital_ptz: false

if you haven't add this code, you can double click the screen to zoom in (digital zoom), and you also can double click to close digital zoom on your android phone


fix drake pendulum optimization by removing angle wrapping

https://github.com/tomsilver/mlrp-course/assets/2816502/4f3b4bdf-87a9-4134-895e-969b9c9369a0

nicer video with seed 0
https://github.com/tomsilver/mlrp-course/assets/2816502/d56660c5-8abf-4ed3-9b3d-8fd1d3165bd1


Things that need to change for a recompile

i looked into it but lost interest after i noticed it needs a little more changes. im writing this down in case i will not touch this again or if someone else wants to take a look.
makefile:68
allows the usage of std::filesystem
    CFLAGS	:=	-g -std=c++17 -Wall -O2 -ffunction-sections \

albuwrapper.cpp:351
fix a bug that will crash the whole homwbrew upon opening the website
    // Determine the type by looking at the file extension
    // bool isVideo = foundFileName.compare(foundFileName.length() - 3, 3, "mp4") == 0;
    // jsonObj["type"] = isVideo ? "video" : "screenshot";

    jsonObj["type"] = "screenshot";
    std::filesystem::path filePath = foundFileName;
    if (filePath.extension() == ".mp4")
        jsonObj["type"] = "video";

currently the "path" key inside the gallery content is missing, which will result in no images shown, even if the above homebrew-crashing bug is fixed. i am not quite sure if its because my emummc is RAW2 or because readdir is broken. i suggest you use std::filesystem to iterate through folders.
albumwrapper.hpp:19
emummc paths can be RAW2 (and probably RAW3,4,5 too). I only have one emummc and yet hekate formatted it this way.
index.html:37
change unpgk to fixed versions. this will fix current react and materialui issues
    <script<EMAIL_ADDRESS>crossorigin></script>
    <script<EMAIL_ADDRESS>crossorigin></script>
    <script src="https://unpkg.com/<EMAIL_ADDRESS>crossorigin></script>

Thanks! I'll include that into a rework of this shortly!


Fix for WFLY-12254, define galleon layers for h2 datasource

Fix for https://issues.jboss.org/browse/WFLY-12254

Removed h2-database layer
Introduced new h2-driver, h2-database,h2-default-database layers
Refactored existing feature-group
Updated doc.

@jamezp I am going to make changes. It can't be merged (related to https://github.com/wildfly/wildfly/pull/12417)

@jamezp , this one should be put on hold until https://github.com/wildfly/wildfly/pull/12417 is merged, I will then make changes to it.

@jamezp @bstansberry , I fixed the PR.

retest this please

@jamezp @bstansberry , I need to re-think these h2 layers. They actually bring too much to the config we add them to. They should only bring the features they add. Bringing in transactions and ee can have side effect on the ee/transactions subsystems present in the configuration.

@jamezp  @bstansberry, I am fine now, very limited content brought by the layers...Sorry for the noise. JF


Doesn't seem to work as expected

Issues

If you're having trouble with Articulate we definitely want to help you. If you can provide a little bit of information it will make our troubleshooting job easier.

Please describe the issue you are having here and answer the question below.
Trained a basic small talk bot which greets when you interact with it. It always gives a reply "We're having trouble fulfilling that request".

Did you download a release or pull from Master? Which release?
Release v0.11.0

What operating system are you running?
MacOS X 10.13.5

Are you running locally or in the cloud?
Locally

Which browser are you using?
Chrome

Hi @ajinkyapuar when that happens is because there was an issue calling your webhook. What configuration are you using?

Do you have a setup tutorial?

We have a blog where we post tutorials of Articulate features https://blog.spg.ai/
Check the A Bot with a Handlebar Mustache blog post

@ajinkyapuar I'll take the thumbs up as you getting it working. If not feel free to comment back or create a new issue.


[Feat] New API in Store

In this PR, introduce a new API register_plugin_module in Store and a new type alias PluginInstance in plugin mod. In addition, the following changes are also made in this PR:

Introduce PluginError in wasmedge_types::error mod
Refactor PluginManager::find and Plugin::mod_instance APIs
Refactor VmBuilder and Vm

Hello, I am a code review bot on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!

@L-jasmine Thanks for the review!


Add Sentry

SteamDB app page links to a few games using this
https://steamdb.info/app/1675900/
Brief explanation of the change
Added a rule for Sentry anticheat

@Lifeismana could you pls run the check for that rule?


update armor and weight values to match 10.26.23 update to remnant 2

I went through src/helpers/data.ts and changed all the armor values, using the in-game numbers without any armor-enhancing traits relic fragments or trinkets, I also fixed the resistances of dendroid leggings, which had 2 overload instead of the 2 corrosive it has in game.
github doesn't let me upload .ts files so I changed it to a .txt but here it is for your convenience, should just be a simple rename to change it back.
data.txt

oh shit, this is awesome! I saw the update and was kind of dreading going through all of it given how painstaking it was to do the first time (I didn't have all the armor in-game at the time as I hadn't beaten apoc yet, so I had to trust the wiki which was wrong on several occasions). I'll get this updated in a few minutes here, thanks a bunch!


Bootstrap integration with ReactJS.NET

Hi there! I was wondering if someone could provide me insight on how to use bootstrap components within my ReactJS.NET project. I've read around and it seems it's not possible to use the "import" keyword withing my project without using webpack (which I would like to avoid). Since I can't use this keyword I'm finding it impossible to use bootstrap's components. I'm pretty novice in this so please let me know if I'm looking at this in the wrong lense :). Any help would be extremely appreciated!

Sure! Use the UMD build of a library like reactstrap. Webpack shouldn't be needed for this.
https://github.com/reactstrap/reactstrap#example

Thanks for the quick reply man! I'm again real novice so not sure where to place the UMD build definition with my ReactJS.net project? I'm assuming I place it within my index.cshtml that's housed under my home view?

Hi there. The best place to look would be the tutorial, which describes how to load in a custom script. Remarkable is used as an example, but it should work with any UMD library (such as reactstrap)
https://reactjs.net/getting-started/tutorial.html#optimization-server-side-rendering
Reactstrap is hosted on cdnjs. Download a copy and add it to your app's content directory, and then modify ReactConfig
https://cdnjs.com/libraries/reactstrap
How could we update the docs to make this more clear? Would having a dedicated section to "adding third party modules" be helpful?

Yes that would be very helpful!

Reactstrap has been added to the samples
https://github.com/reactjs/React.NET/commit/8b9410913675724066b2bcf1ca5fd03202d4fa5a


Enhancement of patient details page

Proposed Changes

Fixes #8808
Implemented some parts of proposed design of patient details page
Created tabs for Patient profile, Consultation history, Test sample history, Shifting history, Visit history as suggested
Shifted add consultation blocks to right side and made it responsive

Proposed:

Modified page:

Need further suggestion on implementing ABHA card and Hospital ID Card
@ohcnetwork/care-fe-code-reviewers
Merge Checklist

[ ] Add specs that demonstrate bug / test a new feature.
[ ] Update product documentation.
[ ] Ensure that UI text is kept in I18n files.
[ ] Prep screenshot or demo video for changelog entry, and attach it to issue.
[ ] Request for Peer Reviews
[ ] Completion of QA

Summary by CodeRabbit
Release Notes

New Features

Enhanced routing capabilities for patient-related views, including new pages for demographics, encounters, health profiles, immunization records, sample test history, and shifting history.
Introduction of a notes management component for patient notes.

Improvements

Updated layout and styling for various components, improving user experience and responsiveness.
Enhanced localization support with new keys for multiple languages, including English, Hindi, Kannada, Malayalam, and Marathi.
Improved navigation within the patient registration form based on URL parameters.

Bug Fixes

Improved error handling and validation in user management and patient registration components.

[ ]  covid vaccination details may come under covid details heading
or
[ ] Rename No.of vaccine doses  to no.of Covid Vaccine doses
since the covid out of context now, this will confuse people with what vaccine doses are mentioned here.

[ ] Not a fan of the right side, we its now a mix of actions and pages so it should probably be refactored to just action. @vinutv will share the design in few days.

Here is the updated design: https://www.figma.com/design/Z93EYKSa1MdBmXndsMBJSQ/Care?node-id=905-901

Redesigned the patient demography section into a 3-column layout to optimise space on the page.
Placed navigation links for demography sections in the left column. These links can be hidden on smaller screens for better responsiveness.
Displayed the demography details in the center column.
Added quick links in the right column for easy access.
cc @bodhish @Mahendar0701

Hi @bodhish  and @vinutv ,
Here is update on my PR. I have made changes to the PR. Could you please take a look at it?
Additionally, I have a few questions:
What should be included in the "Quick Links" section?
Is the "Encounter History" tab referring to the consultation history?
The patient model doesn't include UHID and ABHA ID. Where can I find them?
The volunteer object doesn't have a contact number. Should I fetch the volunteer's contact number using the volunteer ID?
I have yet to implement the links to the tabs.

Overall its shaping up well, good progress @Mahendar0701

What should be included in the "Quick Links" section?
Generally it should be actions, keep what you have for now
Is the "Encounter History" tab referring to the consultation history?
Yeah, call it Encounters
The patient model doesn't include UHID and ABHA ID. Where can I find them?
ABHA ID will only be present if the patient is linked to ABDM. (The UHID design is futuristic, use patient ID as UHID for now)
The volunteer object doesn't have a contact number. Should I fetch the volunteer's contact number using the volunteer ID?
Volunteer is a user, you can fetch the details if a volunteer is assigned. (low priority task)
I have yet to implement the links to the tabs.
Lets get this done, All the tab components will become pages and that will be the major change here. lets also make sure each page will take care of its data loading

This will have way more story points for sure;
Quick code review those are not tabs, those are pages so let's have static paths for each page.

Hi @bodhish  can you please review my update. I almost completed the proposed design .

@coderabbitai full review

@vinutv can you check this out; We should probably trim the tab names also;
I also have a feeling that the right nav should be preserved across these inside pages, what do you think?
Also @Mahendar0701 the notes should be part of the tab.

Can we hide actions that are restricted to the user, rather than displaying them as disabled, to prevent confusion?

We can hide

The right sticky panel should be retitled "Actions" and display only patient-specific actions. All other links should be organised as tabs. There should be a single primary call-to-action on to patient card based on the user’s role. For example, for doctors, the CTA should be "Start Consultation", and for front desk staff, it should be "Book Appointment".
What do you think @bodhish ?

The alert and information labels should be integrated directly into the patient card. There is no need for an additional "Create Consultation" warning alert. Placing multiple primary CTAs across the page may confuse the user, so a single, clearly defined primary CTA should be used.

The right sticky panel should be retitled "Actions" and display only patient-specific actions. All other links should be organised as tabs. There should be a single primary call-to-action on to patient card based on the user’s role. For example, for doctors, the CTA should be "Start Consultation", and for front desk staff, it should be "Book Appointment".
What do you think @bodhish ?

Right sticky action panel should displayed on all tabs right?

Yep; that will be part of the parent section

@bodhish  @vinutv
What should be displayed under Shift patient and Request test tab. Currently i am showing Shift history and sample test history . Should i have to show Shift patient form and request sample test form under respective tabs?. Or let it be same?

Keep that, let's improve as a next PR.

@bodhish  @vinutv
I made the right action panel visible on all pages, added "Notes" as a tab, included a consultation warning message, displayed assigned details in the patient card, and removed the patient actions dropdown. Could you please review these changes and let me know if any improvements are needed?

Can you also address CodeRabbit suggestions?

Added most of the coderabbit suggestions

@Mahendar0701 is this ready for QA testing ?

@Mahendar0701 is this ready for QA testing ?

Some parts of design yet to implement. I will update when it is done

@Mahendar0701 please let me know when you are done with all the changes

@Mahendar0701 please let me know when you are done with all the changes

I will update only EncounterHistory.tsx, can you please review all other work

[ ] The volunter tab is shown on the left side while its not present in the center

[ ] Show Shifiting details as a list?

[ ] Rename Sample Test to Service Request

[ ] Move the Request Sample test to Actions on the right side. Its good to have page specfic actions also going into the right nav. (example Assing to a Volunteer should only be avilable in demography)

@bodhish added requested changes. once look into it.
Can i do "displaying Shifiting details as a list" in my next PR , as new tab designs are proposed in https://www.figma.com/design/Z93EYKSa1MdBmXndsMBJSQ/Care?node-id=905-901&node-type=canvas&t=cA4CvHwv7gPc5Ij2-0  i will update all tab designs in my next PR. What do you say?
I want to close this PR becz its been so long...

@Mahendar0701 consider this closed, @shivankacker will get this merged.

@shivankacker @bodhish is it ready for QA testing, iam seeing a lot of recent commits and conversation,

@nihal467 it is work in progress


Witchaven 1/2 + BuildGDX Crash on Exit

Game
Witchaven 1/2
Engine
BuildGDX
Linux Distribution
NixOS + Flatpak
Luxtorpeda Version
53
Bug description
When exiting the game it crashes and leaves behind a broken window.
Steps To Reproduce
Exit the game using the in-game menu.
Expected Behavior
The game should exit cleanly.
Additional Context
After the window hangs, the game can be forced closed by clicking stop on Steam.
Relevant log output
java.io.FileNotFoundException
        at ru.m210projects.Witchaven.Screens.CutsceneScreen$SMKMovieFile.<init>(CutsceneScreen.java:47)
        at ru.m210projects.Witchaven.Screens.CutsceneScreen.GetFile(CutsceneScreen.java:150)
        at ru.m210projects.Build.Pattern.ScreenAdapters.MovieScreen.open(MovieScreen.java:94)
        at ru.m210projects.Witchaven.Screens.CutsceneScreen.init(CutsceneScreen.java:139)
        at ru.m210projects.Witchaven.Main.show(Main.java:441)
        at ru.m210projects.Build.Pattern.ScreenAdapters.InitScreen.render(InitScreen.java:280)
        at com.badlogic.gdx.Game.render(Game.java:46)
        at ru.m210projects.Build.Pattern.BuildGame.render(BuildGame.java:130)
        at ru.m210projects.Build.Architecture.BuildApplication.mainLoop(BuildApplication.java:137)
        at ru.m210projects.Build.Architecture.BuildApplication.access$000(BuildApplication.java:39)
        at ru.m210projects.Build.Architecture.BuildApplication$1.run(BuildApplication.java:92)

I am able to replicate this. This appears to be an issue with the upstream engine as this is just using the built version from the BuildGDX project. I'm not sure as to a resolution as this time.

@JoshuaFern
I attempted to get some help from upstream and have done some stuff myself as well, to no avail. For now, I've removed BuildGDX as an engine, but will add it back if this gets resolved. In the meantime, Witchaven games are now supported by dosbox-staging. If  BuildGDX works again, I'll have both as engine choices for those games.


Pick a name for python bigchaindb driver

e.g.:

pybigchaindb
bigchaindb-driver
etc

I like bigchaindb-driver, its straightforward.
Another option would be a shorter version bdb-driver

With RethinkDB, the rethinkdb package is actually the Python driver, because there is no Python package for RethinkDB Server, because RethinkDB Server isn't written in Python.
We already have a bigchaindb package (on PyPI) and today it's everything: server, Python driver, and Python client. Of course, the plan is to separate the BigchainDB server from the Python driver. Most developers will never install the server package: they'll be writing applications, so they'll only need the Python driver (or another driver). My suggestion is therefore something like:

bigchaindb as the Python driver (Python package), i.e. the most-used package
bigchaindb-server as the server package
Some name for the package/module of shared stuff, e.g. bichaindb-common, or bigchaindb-shared

See issue #312 where @vrde also suggested some names

Closing since we've (more or less) picked a name for the Python driver (https://github.com/bigchaindb/bigchaindb-driver).


Common content patterns

There is something I need help with. I've tried to put to images in parallel following smallCards as usual. But this time it didn't work on my end.
<Grid variant='smallCards' >
    <Box>

Do

    </Box>
    <Box>

Don't

    </Box>
</Grid>

Images in this PR are compressed with tinyImage compressor plugin in Figma. But I don't think that is the issue. I'm a bit lost as I was working on this page all week and everything was working out well.

I've done a test placing an image in static/images/lexicon instead of next to the page and it works well.

It seems there is something to be improved in the image processor/method/whatever it is called :)

I've done a test placing an image in static/images/lexicon instead of next to the page and it works well.

It seems there is something to be improved in the image processor/method/whatever it is called :)

Gatsby only processes images referenced in the markdown syntax ![image](location) — any images referenced by components will need to, as you discovered, still be referenced in the static folder...
There is a way to query them, I think, however I have not looked into this very much.

Gatsby only processes images referenced in the markdown syntax ![image](location) — any images referenced by components will need to, as you discovered, still be referenced in the static folder...
There is a way to query them, I think, however I have not looked into this very much.

I see.
If we don't have that way of querying them, we will opt to have all our images in static/images/lexicon. At least for the moment, we will continue working that way.

I see.
If we don't have that way of querying them, we will opt to have all our images in static/images/lexicon. At least for the moment, we will continue working that way.

Why not just have the markdown images in src so they can be optimized — and then any inline images (referenced in HTML) put in static?
Its a little bit of work, but its definitely worth the improvements. Especially since inline images aren't as common.


Remove [soon] elements from the UI

We have [soon] elements in many parts of the UI. @aakrem I propose we remove them, since we don't plan to implement them very soon.

How to do it?
Just find the components in the agenta-web codebase (Second screenshot should be in sidebar.tsx), and remove the components.

Would it be better to make these components hidden rather than completely removing them? (Just a suggestion)

I think removing is fine, since it would be very easy to add them later. In addition, it's uncertain how things would look like when we make them visible again, maybe by that point the design would've changed.
Would you like to attempt a PR?

Makes sense. Yes, I would like to attempt a PR.


fix typo

"requestPathInvalidChars" should be "requestPathInvalidCharacters"

Thank you for fixing this, @atsushina! Your change will go live within the next 24 hours.


Question - Is their a way to set the SVG container to be 100% width and height rather than px?

Hi there! :)
I've been looking into this for quite some while and went through the docs but can't see anything. In the configuration of the graph we can add the width and height in px but not in % percent. Is there a way to go around this to have the area to be displayed in the 100% given screen rather than specifying the px?
thank you :)

There's not out of the box way to achieve this at the moment. Have a look at this approach from @TranquilMarmot. Another way to do this, if you're going fullscreen is just to leverage the window.innerWidth/Height:
graphProps.config = Object.assign({}, graphProps.config, {
  height: window.innerHeight,
  width: window.innerWidth,
});

code from our sandbox

As an example, Recharts has a special component to tackle this resizing/percentage issue which is called a Responsive container (demo here).
The component wraps the desired chart (graph in our case) and handles its size.
Is this something that would be interesting to implement here?

Thank you both! :) I really appreciate you taking the time to answer. I went with the first solution but I like the look of Recharts! I'll see if I can fix my code to that

Hey @mermicode, let us know how it goes; I would be Interested to know what you would get out of the mix.

My workaround is to add a div to graph, attach a ref to it, obtain its height and width, update the config once ref is attached to DOM (use a hook for config with initial value as null, update using setConfig). Trick is to render the graph only when config is not null. Demo | Full Code

Code

const MyGraph = () => {
  const [config, setConfig] = useState(null);
  const ref = useRef(null);

  useEffect(() => {
    const { current } = ref;
    if (!current) return;
    const { clientWidth, clientHeight } = current;
    const configNew = { ...myConfig, width: clientWidth, height: clientHeight };
    setConfig(configNew);
  }, [ref]);

  return (
    <div ref={ref} style={{height: '100%'}}>
      {config && (
        <Graph
          id="graph-id" // id is mandatory
          data={data}
          config={config}
          onClickNode={onClickNode}
          onClickLink={onClickLink}
        />
      )}
    </div>
  );
};

NB: if you initiate the hook to have initial config without height and width and update config once ref is not null like in here,  it won't work as expected. This is because the config would be updated after the rendering of graph is started, leading to abrupt stops in animation, which in turn results in the nodes being randomly stuck during the animation at the top left of the screen. A simple setTimeout to setConfig with 3000 ms confirms this, it indeed updates width and height correctly allowing the bring to centre animation to execute and finish.


Send player to other server

Hi, i want to send player to other server if he's connecting through  ex. "play.myserver.com"
i want to made it like:
if (e.getPacket() instanceof HandshakePacket){
HandshakePacket = e.getPacket();
if (packet.getHostname().equals("play.myserver.com")){
// send the player to server <IP_ADDRESS>:25567
}
}
but i don't know how to send player to this server

@Steveice10 can you help me? plz

That's not really something you can just do so easily. Existing solutions like BungeeCord work by acting as a proxy for all network traffic, implementing some logic to login to/switch between servers and otherwise forwarding traffic.


can-import can-tag fails silently when tag does not exist

<can-import from="app/component/" can-tag="app-loading">
          <app-component></app-component>
</can-import>

If app-loading is not already imported, can-import will fail without throwing an error. It never renders app-component.

I'm not sure if a warning would be possible, you don't have to use can-tag (you could use a {{#isResolved}} helper instead) so I don't think we could know when to warn.  But we definitely need to document this so that it's known that can-import is asynchronous.

Re-labeling this as a bug. Unconfirmed, however the callback inside of can-import should throw an error if "app-loading" is not loaded yet.

The DOM is supposed to "never" throw errors.
I think a warning is more appropriate.

Apologies for the confusion: https://github.com/bitovi/canjs/blob/minor/view/import/import.js#L33
"Should throw an error" is only in reference to "callback" on that line, which is expected to be undefined in this scenario.

Closing for: https://github.com/canjs/can-view-import/issues/2


Bump calico to 3.23

From https://projectcalico.docs.tigera.io/getting-started/kubernetes/requirements

Kubernetes requirements
Supported versions
We test Calico v3.23 against the following Kubernetes versions.
v1.21
v1.22
v1.23

Due to changes in the Kubernetes API, Calico v3.23 will not work on Kubernetes v1.15 or below. v1.16-v1.18 may work, but they are no longer tested.

Sounds good to me! If it's a major bump it's probably worth going reviewing all components and bumping them if they're EOL

@manics I'm pushing this onward to a v3 release now.

I had to use an older version for calico in k3s 1.20 because a poddisruptionbudget resource was declared with too modern api (policy/v1, instead of policy/v1beta1).
I had to use calico v3.21 instead of v3.22 because it isn't available any more due to a bug of their to redirect to some new domain etc. I have not yet reported it, yet.


[Install]Meshery helm chart installation is not working

Description

Meshery helm chart installation is not working. The deployment applications are fired up but meshery is not recognised as a service which makes the installation fail at port forwarding step.
Expected Behavior

Helm installation should work fine

/cc @Aisuko @leecalcote

As we go to provide this service, let's optimize for the local deployment scenario and use service type: NodePort

This not be an issue, you should make a choice of the service type that you need before deploying. Default the service type as NodePort that makes zero sense. Just look at the helm/charts project, you can make sure the right way or the best practice.

Can you please update the installation instruction if you think helm charts
are working fine?
On Mon, 13 Jul, 2020, 06:58 Aisuko<EMAIL_ADDRESS>wrote:

This not be an issue, you should make a choice of the service type that
you need before deploying. Default the service type as NodePort that makes
zero sense. Just look at the helm/charts project, you can make sure the
right way or the best practice.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/layer5io/meshery/issues/1257#issuecomment-657312459,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKQMTLQYEYVVIARUNFKP7OLR3JPKNANCNFSM4OX3UQXA
.

It works for me. Need more information here.
➜  meshery git:(dev) kubectl port-forward meshery-66664cfcbd-qkl6m 8000:8080 -n meshery
Forwarding from <IP_ADDRESS>:8000 -> 8080
Forwarding from [::1]:8000 -> 8080
Handling connection for 8000
Handling connection for 8000
Handling connection for 8000
Handling connection for 8000

It works for me. Need more information here. And in my opinion, we should consider Ingress and ServiceMesh way
➜  meshery git:(dev) kubectl port-forward meshery-66664cfcbd-qkl6m 8000:8080 -n meshery
Forwarding from <IP_ADDRESS>:8000 -> 8080
Forwarding from [::1]:8000 -> 8080
Handling connection for 8000
Handling connection for 8000
Handling connection for 8000
Handling connection for 8000

It works till here, try open the port specified in the browser and see the connection handling error occuring

It works for me. Need more information here. And in my opinion, we should consider Ingress and ServiceMesh way

➜  meshery git:(dev) kubectl port-forward meshery-66664cfcbd-qkl6m 8000:8080 -n meshery

Forwarding from <IP_ADDRESS>:8000 -> 8080

Forwarding from [::1]:8000 -> 8080

Handling connection for 8000

Handling connection for 8000

Handling connection for 8000

Handling connection for 8000

It works till here, try open the port specified in the browser and see the connection handling error occuring

No,Meshery provider can be found on the web browser page at localhost with export port.


Height of annotation line from a specific point

Can we set height of annotation line from a certain point?

Not possible (at least for now)


Application with explicit default value

Passing the special value default as an argument when applying a function should cause the argument's default value to be used, as in the spec.
I recall some discussion of the semantics (probably on pivotal, where I can't access it now) where someone (@jdunkerley?) said that using default as an identifier (as the libs currently do in several places) should remain legal, and the special behavior of default only applies if the builtin isn't shadowed by a binding.

@JaroslavTulach I'll assign this to you to triage


Refine deno.json.

Codecov Report

Merging #91 (3dfd2df) into main (f5822a7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #91   +/-   ##
=======================================
  Coverage   94.37%   94.37%
=======================================
  Files          20       20
  Lines        1848     1848
  Branches      198      198
=======================================
  Hits         1744     1744
  Misses        104      104

Flag
Coverage Δ

unittests
94.37% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


HttpClient, HTTP/2, IIS 8.5

In development (Visual Studio MVC/WebApi project with built in web server), I have been successful calling apples apns api, however fail when I move to production (Windows 2012 R2).  The production WebApi application works fine, it just crashes on httpclient SendAsync to api.push.apple.com using http/2.
I can run a successful curl in production calling api.push.apple.com with all my parameters (returns 200 success code), but my httpclient code fails (generic "Error while copying content to a stream").  The code in development works great and I can send push notifications to mobile devices easily.
The curl shows successful negotiation of certificates (which I though may have been the problem as APNS requires Geo Trust Global CA root cert).
Logging shows all necessary parameters are being created (jwt token for example).
I'm stumped, would greatly appreciate assistance. ?IIS configuration, ?firewall issue...

For http client issues head to http://github.com/dotnet/corefx/


[WIP] Add the progname to all loggers

General idea is that instead of creating a single logger, then sharing it via broadcast, we instead just create multiple loggers.  This should already handle any mutexing concerns.  We may choose to do this slightly different in conjunction with #21177 .
@bdunne Please review.

@miq-bot cross-repo-test /all

@agrare How do we tests the journald logger changes?

@Fryguy You can try it on an appliance, linux vm on your mac, or if you give me a bit I will pull this down and test it

Ok, my only concern there is just it won't work as expected because the journald logger uses syslog_identifier as opposed to progname.  Even though it initializes to @progname, I think us changing the progname after the fact is not reflected in the syslog_identifier

@bdunne I unWIPped, but waiting on cross repo test (and manual journald tests, but we can merge without journald checks, because worst case scenario it will just be like it was before)

Ok, my only concern there is just it won't work as expected because the journald logger uses syslog_identifier as opposed to progname.

I think we split that up so that we could change the syslog_identifier independently of the initial progname (essentially for the reason that you're currently doing this).  You're correct that if you set logger.progname= that won't be picked up by the journald logger, but if you're solving the same issue in a different way we could drop syslog_identifier entirely and just use progname

Ok, yeah, I think moving forward we can just use progname and that would be sufficient.

If I switch to using progname then: $journald_log.progname = "evm" I get Jun 21 14:48:36 desktop evm[1584729]:  INFO -- evm: test test test in the journal.  I'll put in a PR for that.

I added progname processing to the logger processor in https://github.com/ManageIQ/manageiq-gems-pending/pull/522, which should be merged first.

https://github.com/ManageIQ/manageiq-loggers/pull/36

I'll have to release a new manageq-loggers for that journalad thing, but I'm wondering if we can move forward without it, and align later on it.


docs: set node front when embeded

Description
set node front when embeded
Motivation and Context

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Enhancement (changes that improvement of current feature or performance)
[ ] Refactoring (changes that neither fixes a bug nor adds a feature)
[ ] Test Case (changes that add missing tests or correct existing tests)
[ ] Code style optimization (changes that do not affect the meaning of the code)
[ ] Docs (changes that only update documentation)
[ ] Chore (changes that don't modify src or test files)

Self Check before Merge

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

群组选中，再使群组失去选中，群组内节点依旧不能选中


Supported Yii application log

Yii application log samples
2015/05/08 15:40:23 [info] [application] [CDbCommand:491]SELECT usr.id AS user_id
 FROM user AS usr
 WHERE usr.started_at <= :now AND :now < usr.ended_at
 AND usr.status = :active. Bound with :now='2015-05-08 15:40:17', :active=1
in /home/deploy/***/app/***.php (35)
in /home/deploy/***/app/***.php (55)
in /home/deploy/***/app/***.php (212)

done


chore: avoiding relative path

Using .cargo/config.toml creating an env var
called WORKSPACE_ROOT

pr updated but we still have these remaining cases that I was not able to find a way to fix yet:
➜  trustify git:(workspace-root) rg "etc/test-data/"
modules/ingestor/src/service/sbom/spdx.rs
81:        let data = include_bytes!("../../../../../etc/test-data/ubi9-9.2-755.1697625012.json");

modules/ingestor/src/service/sbom/cyclonedx.rs
87:        let data = include_bytes!("../../../../../etc/test-data/zookeeper-3.9.2-cyclonedx.json");

modules/ingestor/src/service/advisory/cve/loader.rs
180:        let data = include_bytes!("../../../../../../etc/test-data/mitre/CVE-2024-28111.json");

modules/ingestor/src/service/advisory/osv/loader.rs
304:        let data = include_bytes!("../../../../../../etc/test-data/osv/RUSTSEC-2021-0079.json");

modules/ingestor/src/service/advisory/csaf/loader.rs
195:        let data = include_bytes!("../../../../../../etc/test-data/csaf/CVE-2023-20862.json");
276:        let data = include_bytes!("../../../../../../etc/test-data/csaf/rhsa-2024_3666.json");

modules/fundamental/src/advisory/endpoints/test.rs
532:const DOC: &[u8] = include_bytes!("../../../../../etc/test-data/csaf/cve-2023-33201.json");

pr updated but we still have these remaining cases that I was not able to find a way to fix yet:

You may need to massage things a bit, but you should be able to do it. Here's an example:
modified   modules/ingestor/src/service/sbom/spdx.rs
@@ -78,7 +78,7 @@ mod test {
     async fn ingest_spdx(ctx: TrustifyContext) -> Result<(), anyhow::Error> {
         let db = ctx.db.clone();
         let graph = Graph::new(db);
-        let data = include_bytes!("../../../../../etc/test-data/ubi9-9.2-755.1697625012.json");
+        let data = ctx.document_bytes("ubi9-9.2-755.1697625012.json").await?;

         let (storage, _tmp) = FileSystemBackend::for_test().await?;

@@ -88,8 +88,8 @@ mod test {
             .ingest(
                 ("source", "test"),
                 None,
-                Format::sbom_from_bytes(data)?,
-                stream::iter([Ok::<_, Infallible>(Bytes::from_static(data))]),
+                Format::sbom_from_bytes(&data)?,
+                stream::iter([Ok::<_, Infallible>(Bytes::copy_from_slice(&data))]),
             )
             .await
             .expect("must ingest");

thanks that tip worked well, pr updated :+1:
the last part is a constant, I don't know if make sense to refactor unless we don't need to create weirdo things like this: https://github.com/martelinho-de-ouro/moria-watcher/blob/main/common/src/vars.rs#L4-L13
➜  trustify git:(workspace-root) rg "etc/test-data/"
modules/fundamental/src/advisory/endpoints/test.rs
532:static DOC: &[u8] = include_bytes!("../../../../../etc/test-data/csaf/cve-2023-33201.json");

the last part is a constant, I don't know if make sense to refactor unless we don't need to create weirdo things like this

That with_upload fn is essentially doing what the new TrustifyContext::ingest_document does, so it can be significantly simplified, since it can delegate most of what it does to the ctx it is passed.
I would turn DOC into a string:
const DOC: &str = "csaf/cve-2023-33201.json";

And wherever it's used, do with it what you've done everywhere else in this PR. Make sense?

thanks again , pr updated :+1:


create object instead function

fix bug https://github.com/digi604/django-smart-selects/issues/253

Coverage remained the same at 89.809% when pulling 27b9d59476fd30efb76323bd790f0e557cb0b2b4 on IlyasValiullov:fix-m2m-nonechained-js-bug into d2b8772d4e88755d83e4fb42c0975cc392be1853 on digi604:master.


ci: Add action for xtask codegen

This commit adds a github action that will

check out aya and libbpf
run xtask codegen
if there is a diff, commit changes to the codegen branch
if changes were comitted, open a pull-request

Triggering is currently manual (via the Actions) tab or by REST API
Here's an example PR from this action: https://github.com/dave-tucker/aya/pull/2
Closes #59

Wow that was fast. Thanks! 🙏


[FEATURE] Enable uploading multiple images

Description
Currently, users are only able to upload one image at a time. It would be great to enable users to upload multiple images in the same post.
Screenshots
No response
Additional information
No response

Yeah , that'd be great, adding to this ,uploading menu could be sticky to the window.
Would you like to work on this or should others try?

Yh. I was even gonna create a new issue for making new post menu sticky

Thanks for the help!

Can I work on this?

Yeah ofcourse


Bump-up Prometheus client library

Description
Bump-up Prometheus client library
Type of change

Bump-up dependent library (no changes in the code)

Testing steps
To be checked on CI
Checklist

[ ] make before_commit passes
[ ] updated documentation wherever necessary
[ ] added or modified tests if necessary
[ ] updated schemas and validators in insights-data-schemas in case of input/output change

Codecov Report
Patch and project coverage have no change.

Comparison is base (7af543e) 69.23% compared to head (6346077) 69.23%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #375   +/-   ##
=======================================
  Coverage   69.23%   69.23%
=======================================
  Files          14       14
  Lines        1180     1180
=======================================
  Hits          817      817
  Misses        342      342
  Partials       21       21

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add option to display some statistics for each node

It would be nice to print:

number of lines of code in the node;
number of external calls in a node.

The first feature was added in 2fef3f4fdc01a3e46907b7cd7d7b0802e6e9479e.


Support for 256 colors

Would it be possible to support more than 16 colors?

@dylanaraps why exactly?


Jump in visualization when values update

I’ve noticed some jumps in the animation associated with the values being updated (every 30sec in my case) and it may be proportional to the number of digits: When the current value drops from 3 digits to just 2, the jump appears larger than otherwise. The values themselves on that line move slightly sideways too and there is a miniscule jump in L3 even if the # of digits there remains the same.
Please see screen capture below. The values change from ~12A to ~9A here:

A quick update: I was able to change the Shelly update interval from static ~30sec to some ”update on change” mode, and that makes the jumping pretty comical :)

@hiatsu0 thank you for your report.
I was aware of this bug, but haven't found a way to avoid it yet ...
I have to spend a bit more trying out solutions.

Have you had time to try any solutions?
I discussed the issue with GPT4’s Ask The Code and it suggested adding something like below to energy-overview-card.ts
However I’m not competent to say if this makes any sense at all, likely not:
”
The animation's key points (keyPoints) are set to either 1;0 or 0;1 based on the inverted variable, which determines the direction of the animation.
The issue arises because every time the power value is updated, the animation's key points are reset, causing the sphere to jump to the starting position of the animation. To fix this, we need to maintain the sphere's current position when updating its speed.
Here's a potential solution:

Calculate the current position of the sphere based on the elapsed time of the current animation cycle.
Use this position as the starting point for the next animation cycle.
Update the animation's speed (duration) based on the new power value.

// ... existing code ...

// Calculate the elapsed time of the current animation cycle
const elapsedTime = (Date.now() - animationStartTime) % animationSpeed;

// Calculate the current position of the sphere based on the elapsed time
const currentPosition = inverted ? 1 - (elapsedTime / animationSpeed) : elapsedTime / animationSpeed;

// Update the animation's key points based on the current position
const newKeyPoints = inverted ? `${currentPosition};0` : `0;${currentPosition}`;

// Update the animation's duration based on the new power value
const newAnimationSpeed = clamp(y, animMin, animMax);
if (newAnimationSpeed === animMax) newAnimationSpeed = 0;

// Update the animation element with the new key points and duration
const animationElement = this.shadowRoot.querySelector('animateMotion');
animationElement.setAttribute('keyPoints', newKeyPoints);
animationElement.setAttribute('dur', `${newAnimationSpeed}s`);

// ... existing code ...

”

@hiatsu0 I've spent a lot of time now trying to implement the solution or different approaches.
I've managed to dynamically change the animation speed with the dur attribute, but the result still doesn't look good.
I think to fix this properly I have to reimplement the whole animation to not be a SVG animation.


convert: Fix heat demand hourshift for xarray 0.15.1

From xarray version 0.15.1, .values cannot be assigned. You should
use the .assign_coords() method instead.
See release notes for xarray 0.15.1 "breaking changes":
http://xarray.pydata.org/en/stable/whats-new.html#v0-15-1-23-mar-2020

This change is also backwards-compatible with older versions of xarray (at least with version 0.12).


Pattern build issue with FoodON/CHEBI imports

This has only been seen on my new branch (that I am aware of) https://github.com/monarch-initiative/MAxO/pull/229  so you would have to look on this branch to see what I'm talking about.
Basically, I had to update a few terms in the nutrition_supplementation_foodon pattern.
First, it appeared that FoodOn had obsoleted their Vitamin C and Vitamin D supplement terms, so I needed to update those.  FoodOn is now importing Vitamin C and Vitamin D from CHEBI, so I updated those terms in my patterns.
However, now, I am having issues with OTHER terms imported from Foodon. Specifically, MAXO_0000761 which should be vitamin B supplementation, but is now 'B vitaminvitamin B supplementation'.
MAXO_0000108 iron supplementation, but now synonyms are 'iron atomiron supplemental intake'
MAXO_0010100 dietary iron intake avoidance now has synonyms that are 'avoid iron atomiron intake'
MAXO_0010096 dietary sodium intake avoidance now has synonyms that are 'sodium atomsodium consumption avoidance'
MAXO_0010115 dietary calcium avoidance now has synonyms that are 'avoid calcium atomcalcium intake'
I believe the source of the issue is that there are more than one rdfs:label for the terms I am pulling from Foodon (that were imported from CHEBI) and they are not identical. Somehow, when robot pulls these terms from more than one rdfs:label and mashes them together. Unclear why this is happening.
I can write patterns to work around this, but I thought I would point it out. Not sure if this is an issue with FOODON importing the CHEBI term and then altering the label or if it is an issue with Robot. Or both.
@matentzn @ddooley
Anyways, this is not critical to be solved this minute--as this is a side branch I've been working on. And, as I said, I can come up with a workaround pretty easily, but I wanted to point it out. Thanks!

So I am sure this is related to FoodOn adopting CDNO for its nutritional component hierarchy, and using CDNO's organization of CHEBI terms (and deprecating in favour of them) where possible.  At moment CDNO is requesting some changes in CHEBI re. vitamin role / material entity, and that is being sorted out.  However I'll have a look to see if there are duplicate labels somehow directly in FoodOn, upstream of your MAXO terms.  FoodOn would never alter rdfs:labels intentionally!  Pretty sure CDNO wouldn't either but we'll see...
d.

So I'm gathering that this is about DOSP patterns that need to be adjusted to include 'term replaced by' ids?  In FoodOn, the switch is to CHEBI terms directly.  However, for Vitamins in particular, there is some confusion at moment about CHEBI Vitamins, which should be resolved fairly soon, see thread: https://github.com/Southern-Cross-Plant-Science/cdno/issues/57

@ddooley is this due to those CHEBI vitamin terms being roles rather than material entities? Aka were the original (now deprecated) foodon vitamin terms material entities?
@LCCarmody The long and short of the CDNO issue above is that CHEBI vitamins are a mix of roles and chemical entities so @LilyAndres is working with the CHEBI curation team to sort that out. Hopefully that will help resolve the issue at hand here.

Thanks for getting back to me. It seems somewhere along the way there re 2 different 'rdfs:labels' instead of using a synonym. For some reason, when I do a build, it combines the 2 different labels in an odd way. I can override this, but wherever there is a change in label name, that needs to be changed.  Adding a screenshot of how CHEBI appears in my import...3 rdfs:labels are 'calcium atom', but the first one is 'calcium'.  I'm not sure why ROBOT combines the 2, but it does.

Thank you for looking into this.

I see now this discrepancy is coming in via CDNO.  I will raise an issue there. This is a screenshot of CDNO calcium, which comes in via CHEBI.

Thanks @ddooley

Thanks all will respond in https://github.com/Southern-Cross-Plant-Science/cdno/issues/64

Thanks for this, please see my reply in Southern-Cross-Plant-Science/cdno#64

The update is that CHEBI will be implementing both a vitamin role and vitamin molecule (vitamer) branch in the coming weeks.  CDNO and thus FoodOn will then be able to make appropriate logically consistent references.

Not sure when this was fixed, but all seems to be good. Thanks so much @ddooley and @LilyAndres


Kill angry wolf (sentinel) -quest errors

Please see this issue linked:
https://github.com/mcmonkey4eva/Sentinel/issues/240

what i can say is that the errors start to pop up after i safed the quest.

Quests does not modify the max health of wolves. Looking at the list of plugins you posted, my first suspicion would be MyPets. Good luck!

Unless you have evidence that Quests is causing the issue, the matter is now closed.


Fix null reference crash when initiating billing flow on Android

This pull request fixes a crash caused by a null reference exception when initiating the billing flow on Android.

Closing since this seems to have been fixed in master. Could you please update dev? It's currently 5 commits behind master.


Feature idea: Use background job to create version records

Hi,
It would actually be great, if there was an easy way to configure the paper trail data creation in a background job using something like delayed_job / sidekiq / resque.
Has anybody thought about this ? I believe this feature would be useful, though I haven't yet fully thought about the design, i.e. how it should be implemented within paper_trail. I will take a stab at it, however before I did I wanted to know others' take on this.

Interesting idea. I assume the goal is performance? There is a trade-off though: some people rely on their audit trail and can't take the risk of the background job failing. So, this feature (background jobs) would have to be optional.
Also, the experimental associations feature currently uses a database transaction id to identify related changes. It could be tricky to pass that transaction id to the background job.
This idea may be difficult to implement, but I'm not opposed it, as long as it's optional, actually improves performance, and doesn't dramatically increase the complexity of the library.

Yes certainly, this has to be optional. And it is for performance reasons. I will have a deeper look.

Hi Dhruva, are you still working on this? Want me to keep the issue open?

I understand one can pass meta information from a model or the application controller in rails, but can one pass meta information before you perform a certain update to enable paper_trail the ability to proceed with logging as usual?

Closing due to inactivity. If someone wants to commit to working on this, we'd be happy to reopen it.


typescript: determine usage of ddk config construct

determine usage of ddk config construct

Write out reccomendation: consider #147

Result

Design a new version of DDK config to support the following needs.

Support global configuration of AWS resources based on environment.
Centralize common patterns (tagging, notifications etc) to minimize redundant IaC.
Keep usage flexible and allow users to use their own configuration mechanisms. In other words, don’t “handcuff” developers by making DDK Config mandatory.

Action Items
Broken out to issues called out in:

#246
#247
#247


jenkins: openstack-diskimage-builder: Fix combination-filter

Commit 4b31a6280b7a("jenkins: openstack-diskimage-builder: Add openSUSE
13.2 distribution") added support for openSUSE 13.2 but it also
introduced a broken combination filter because of the inline comment.
The inline comment became part of the combination filter which led to
a non-working filter in the end so we move it elsewhere.

@dirkmueller please apply :) I have tested it by simply modifying the job directly on the Jenkins instance. Unfortunately I don't have privileges to actually upload jobs using jenkins-job tool but I hope it's fine now.

Ts. I merged it but the yaml is broken. I need to check the CI results before merging. Sorry...

Fix is https://github.com/SUSE-Cloud/automation/pull/1502


go/printer: go.dev/cl/609077 causes unintended formatting changes

go.dev/cl/609077 causes a change in formatting. Reading the CL description and the test cases leads me to believe that this change is unintended.
Reproducer:
package main

import (
	"bytes"
	"fmt"
	"go/parser"
	"go/printer"
	"go/token"
)

const content = `package foo

type S struct {
//- comment
Name *string
}`

func main() {
	fset := token.NewFileSet()
	file, err := parser.ParseFile(fset, "", content, parser.ParseComments)
	if err != nil {
		panic(err)
	}
	var out bytes.Buffer
	if err := (&printer.Config{Mode: printer.TabIndent | printer.UseSpaces, Tabwidth: 8}).Fprint(&out, fset, file); err != nil {
		panic(err)
	}
	fmt.Println(out.String())
}

Before go.dev/cl/609077, this printed:
package foo

type S struct {
        // - comment
        Name *string
}

After go.dev/cl/609077, this prints:
package foo

type S struct {
        //- comment
        Name *string
}

Related Issues and Documentation

go/printer: Fprintf uses different settings than go fmt  #16963 (closed)
go/printer: Strange indentation behavior/ broken output under some circumstances #5946 (closed)

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)

cc @mateusz834

CC @griesemer

This change was reverted, without any further discussion here with a comment:

it turned out to also introduce a change to the formatting as described in issue #69382, which wasn't intended.

This formatting change was intended, see my comment above: https://github.com/golang/go/issues/69382#issuecomment-2341595364 and the test case, with a similar case (go doc formatting in not executed).
https://github.com/golang/go/blob/90391c2e8ad8da167aed53bad5857008a410d0c1/src/go/printer/printer_test.go#L919-L935
Would like to hear how we should now move forward with this change.

@mateusz834 Apologies for the revert w/o external discussion. W/o going details, this change broke some Google internal tests and in order to unblock this we decided to revert this change for now. The correct fix may well be that we need to make some changes to the internal code, but we haven't had the time to look into it. If we decide to do that, we may be able to simply reapply your CL. Thanks.


What's difference from deeplab_resnet_init.ckpt and deeplab_resnet.ckpt ?

Is deeplab_resnet_init.ckpt pretrained from MS COCO as described in http://liangchiehchen.com/projects/DeepLabv2_resnet.html ?
Is deeplab_resnet.ckpt the final model trained/validated on VOC 2012 Aug dataset ?

I have the same question,now have you ever understood the differences between deeplab_resnet.cktp and deeplab_resnet_init.ckpt?is deeplab_resnet.ckpt the final model? thank you very much.

@yishishiyi

as explained in README: https://github.com/DrSleep/tensorflow-deeplab-resnet#caffe-to-tensorflow-conversion;
resnet.ckpt - trained on PASCAL VOC, init - pre-trained on MS COCO with last layers initialised randomly.

@DrSleep thank you so much~0**__**0,thank you!!!!!!


1.20.4 Packs not overriding, stacking instead

In 1.20.4 the behavior where you send the resource pack to the client was changed from overriding the existing pack, to adding another pack.
There is a new packet that can be sent to disable individual packs or all packs, could this be implemented?

Download latest version and check the new behavior configuration, by default it override packs on PLAY protocol and stack on CONFIGURATION protocol.


[Fix] [Anchor BE - Python} FAQ Page Content Missing showing no result found, fix by populating the database[Fix] [Anchor BE - Python} FAQ Page Content Missing showing no result found, fix by populating the database

Description
This task involves populating the database with frequently asked questions (FAQs) using a superadmin account. The populated data will ensure that the FAQ section is filled with relevant information, improving user accessibility to common questions and answers.
Acceptance Criteria

A superadmin can successfully populate the FAQ data into the database.
The data is correctly stored and accessible through the FAQ API endpoints.
Appropriate security measures are in place to restrict this functionality to superadmin accounts only.
The FAQ data is correctly stored and integrated with the existing API endpoints for retrieval.

Purpose
The purpose of this feature is to enable the superadmin to efficiently populate the FAQ section of the application with relevant information, allowing the system to provide users with immediate access to important questions and answers, enhancing the user experience and reducing the need for direct support inquiries.
Requirements

Implement a feature allowing the superadmin to populate the FAQ database.
Ensure that the populated data includes comprehensive and relevant FAQs.
Restrict the data population functionality to superadmin accounts only.
Validate that the populated data is correctly stored and can be retrieved via the appropriate API endpoints.

Expected Outcome

The database is successfully populated with a set of FAQs that are comprehensive and relevant.
Users can access the FAQ section and find answers to common questions without delays.
The process is secure, with only superadmin accounts having the ability to perform this action.
The FAQ data is stored correctly in the database and is fully integrated with existing API endpoints for easy retrieval and display.

Related Issue
https://github.com/hngprojects/hng_boilerplate_nestjs/issues/922

Modify the title, this is FASTAPI boilerplate repository and also python.


applet.program.psoc1: implemented

Here's a run of it:

The massive state machine written in not very idiomatic Amaranth scares me.

Would be glad to hear ideas of how to restructure it. It's the first piece of Amaranth code i've written. I definitely am impressed with Amaranth, implementing the same thing in verilog would have been a lot more painful.
The state machine is in the IDLE state when doing nothing. For some short commands (such as assert/deassert reset), it just changes the outputs, and goes back to IDLE. There are two long-lasting commands: CMD_SEND_BITS, which sends up to 64Kib from the FIFO, followed by an optional wait-and-poll, followed by an optional 40 zero-bits. And the other is CMD_READ_BYTE, which takes an address, a byte count, and reads those bytes, incrementing the address internally. Frankly I do see how it's actually more complicated than it needs to be. It's not like USB bandwidth is a bottleneck here. I think for reading bytes I could get rid of the auto-increment feature, and have the host send a bunch of read command+address pairs, and read the results of that all at once. Also the 40 zero-bits can be sent by the host manually, there's no reason to complicate the state machine with it. And my initial thoughts of why I did it that way is invalid (I was thinking to minimize host-to-glasgow communication which really isn't something that needs to be optimized for. The only thing that needs to be optimized is to minimize the amount of separate occasions the host waits for data before sending the next command. i.e. reading all bytes, with a single read byte command followed by waiting for it, and ontly after sending the next read-byte command would be a waste)

Also, I would like to acquire a PSoC 1 developer board that can be used to test the applet, unless you're willing to commit to being responsible to maintaining the applet indefinitely (and even then, I'd rather have one around).

These chips don't need any support components to be able to be programmed (except perhaps decoupling caps? but I bet you could get away even without those.) They just need 5v (or less), gnd, and 3 signal wires (xres, sdata, sclk). No regulators/reset monitors/oscillators/pull resistors, really nothing needed.
If you only need it for testing the applet, and don't want to experiment with other peripherals, then I suppose easiest solution would be, I could solder up these components I don't need with a pinout that would match the applet's default pinout, maybe add a led to be able to test a blinky app programmed onto it, and send it to you:

Or you could do the same, I got this chip on the picture (CY824794), and QFN adapter off of ebay or aliexpress. The chips cannot be permanently security locked, bulk erase always works on them so it's safe to get them second hand.

I could solder up these components I don't need with a pinout that would match the applet's default pinout, maybe add a led to be able to test a blinky app programmed onto it, and send it to you:

That works for me. I have the skill to solder them but ever since my disability got worse I just don't have the time to do all of the things I used to have fun ;;

I definitely am impressed with Amaranth, implementing the same thing in verilog would have been a lot more painful.

For sure! I think you're actually not taking full advantage of the language (aside from some Verilog-isms I'm seeing that I didn't comment on in detail because it would take longer than I have available right now, we have higher level features like streams that I'm pretty sure would work well here).

Would be glad to hear ideas of how to restructure it [...]

I can throw some ideas your way but it might be a lot more productive for us to share a VS Code Live Share and a voice meeting. Are you available for that?

By the way, how was your Amaranth learning experience? Sadly we still don't have a tutorial, though I think the guide can pass for one if you already have HDL experience. People used to complain (I mean this in a neutral sense!) that learning Amaranth was hard while we had very little docs, but now almost nobody gives any kind of feedback, positive or negative, which is in some way even more difficult.

I've simplified the state machine a bit.

the zero bits that are needed after polling are now sent by the host, rather then generated by the state machine
when reading bytes, the address generation now happens on the host
since the address doesn't need to be memorized while shifting it, because we don't need to increment it anymore, that saves another register, so we can load the address directly into byte

I also made a PR with the ISSP spec documents, and adjusted the commend references in the source code. Should I change my "#Rev K" comments to #G00090 ? (for the areas where I am referencing which vector and which chip is covered by which document).
What I considered but didn't do:
Right now to read 1 byte, one has to send two bytes (a command and an address)
I could further simplify the state machine, to not generate the 3-bit opcode and not generate the 3-bit tail end, but for it to be sent using CMD_SEND_BITS, which could also send the address, while CMD_READ_BYTE could take care only of the bus turnaround, and the shifting of the bits. I don't like this because it would mean that the host has to send 6 bytes every time it would want to read a single byte, and that feels like too much, just for the sake of simplifying the state machine.
I didn't use streams cause our conversation on the amaranth PR, sounded like it wasn't clear what the fifo stream interface will look like in the future, and I thought that it would be easier to just use the same simple fifo interface as other applets are using, cause it would make it easier to upgrade in the future when the fifo stream interface gets stabilized.
Another thing I want to not is that for the outputs I have used FFBuffers to keep them close to the pins with consistent timing.
That means that I cannot take the output of those flipflops and use them as inputs for my own logic. So what I've done is that there's a second shadow-flipflop for each of these IO-embedded flipflops, which can be used for inside-fpga logic.
And that's why you see me assigning outputs in the combinational domain like this:
m.d.comb += sdata_o_nxt.eq(1)
m.d.comb += sdata_oe_nxt.eq(1)

This way it allows me to control those signals from within the state machine, but without taking the penalty of 1 cycle of latency to the actual output. I find it easier to reason about my logic this way. If I were to accept the latency I feel like I'd have to keep more info in my head to understand how it works. But I feel like this is what you may be referring to as verilog-ism?
There's another instance of me using _ff for edge-detection on sdata, but I though I was supposed to do that, because Rose() has been removed from Amaranth.
Maybe we can have a live chat in the weekend? Not sure what vscode live share is like, does codium support it? I mostly live in terminal-based text editors. But I could do VNC.
Regarding Amaranth learning experience:

At some point somehow I reached an old version of the documentation, without me realizing. This made me think that a bunch of stuff is not documented. I realize it's absolutely my fault, and later I realized and went back to reading the rest of the docs that I was missing, but perhaps the old doc websites could be edited to make the version number pop out better, and perhaps have a clear link there to the latest docs.
So Instead of:

Do this?:

The docs are referring to some very outdated tutorials: https://amaranth-lang.org/docs/amaranth/latest/tutorial.html I haven't looked at all of these, but for example I went looking at the graded exercises, and the friction I experienced was annoying. I.e. code examples not working, me needing to figure out how to fix it, what to replace it by, etc...Those tutorials are still valuable cause they cover things not in the official documentation, like formal verification, so I don't know what I suggest, I definitely wouldn't want to get rid of those links, Ideally it would be best to get outdated things updated in the tutorials. But I guess it takes time.

When it comes to the official documentation's quality I don't really have complaints. Perhaps some things I feel are missing would be some examples of how to use with specific toolchains, like the yosys with ice40, how to specify constraints, etc...? But maybe the info is there and I just didn't see it.

Not sure what vscode live share is like, does codium support it?

No, Live Share is for Microsoft-branded VS Code only.

At some point somehow I reached an old version of the documentation, without me realizing. [snip]

Ah, that's unfortunate. The problem is that "Go to Latest" is not desirable as an action item either! This is because "latest" can significantly differ from the latest release and that can also be confusing. "Latest release" is more tractable but I don't know how to do this using the Sphinx pipeline in a way that wouldn't be a headache to maintain. (Right now the old docs are not regenerated at all, they're treated as static HTML.)

The docs are referring to some very outdated tutorials:

I do this as basically harm reduction. At the time I wrote that page, I had no idea how to write... well, documentation in general, but tutorials in particular. Now I know how to write good documentation but I still haven't written a first-party tutorial. I guess I should at least put a prominent notice saying that the community tutorials are outdated, or perhaps remove them entirely.

I went looking at the graded exercises

Can you tell me more about what you expected to find? Do you mean "graded" in an academic sense? I don't really have an academic background (I never formally studied CS for example) so I'm not quite sure what do you mean by that.

Those tutorials are still valuable cause they cover things not in the official documentation, like formal verification

I'm not so sure about that; the formal verification experience with Amaranth is actually pretty poor, largely because of poor interfacing with Yosys (sby is not a great interface), and right now, while it's present, it's intentionally not documented or advertised as a feature. I think removing that link is probably fine, personally.
I don't think I can update the tutorials, they're not under my control, they were written by third parties some of which I've never even really talked to...

When it comes to the official documentation's quality I don't really have complaints.

Oh, nice!

Perhaps some things I feel are missing would be some examples of how to use with specific toolchains, like the yosys with ice40, how to specify constraints, etc...? But maybe the info is there and I just didn't see it.

It's not. The platform layer is one of the last remaining things that aren't documented well. It's on the TODO list, though I don't have an ETA.
Thanks for such a detailed answer.

I didn't use streams cause our conversation on the amaranth PR, sounded like it wasn't clear what the fifo stream interface will look like in the future, and I thought that it would be easier to just use the same simple fifo interface as other applets are using, cause it would make it easier to upgrade in the future when the fifo stream interface gets stabilized.

Quick note on this: the Glasgow FIFOs are definitely going to offer streams in a way similar to the current implementation, and since Glasgow doesn't offer any kind of backwards compatibility for dependent code, if I decide to change it after all, I can do it in a single PR. I would say that all new applets should use the stream interface and not the old FIFO style interface. (Perhaps we should do a deprecation cycle on the latter.)
The Amaranth FIFOs will have backward compatibility guarantees, and will involve an RFC. Until the RFC is merged I can't say what exactly the interface will be.

Another thing I want to note is that for the outputs I have used FFBuffers to keep them close to the pins with consistent timing.
That means that I cannot take the output of those flipflops and use them as inputs for my own logic.

If you use streams and IOStreamer this problem is solved, as the latency of the FFBuffer is handled by the IOStreamer primitive. All you need to do is to register, while sending an output bit, whether you need an input bit back, and to use streams to implement your logic.

Can you tell me more about what you expected to find? Do you mean "graded" in an academic sense? I don't really have an academic background (I never formally studied CS for example) so I'm not quite sure what do you mean by that.

Apologies, I meant specifically this tutorial: https://github.com/robertbaruch/amaranth-exercises which says "Graded exercises" in its title. I also don't know why they're called graded. sent a minor PR there, and it was merged in less than a week, so the repository is alive: https://github.com/RobertBaruch/amaranth-exercises/pull/3  However there are other issues too, that were not so obvious to solve and needed some experimentation and I didn't have the energy. Specifically for example the lack of Past() and Rose(), I could certainly do an _ff signal, but I am not sure how that interacts with formal verification. It was also my first time actually playing with formal verification, so parts of the tutorial I could go through were interesting, but I may not be qualified to fix the things that don't work.

Specifically for example the lack of Past() and Rose(), I could certainly do an _ff signal, but I am not sure how that interacts with formal verification.

The reason Past() was removed is that the behavior of it under reset was ambiguous and poorly defined. By using an _ff signal (with explicit reset-less behavior, or not) you rectify that, and also gain some other things, like being able to use arbitrary expressions (which weren't supported by Past()).

I've switched to using the fifo stream interface. Also I removed some unnecessary combinatorial feedback from the fifo signals, and it should now also follow stream rules.
I considered switching to IOStreamer, however I see a few issues that make it seem not so great for my usecase:
There doesn't seem to be a way to only update a subset of the ports. So then I'd need 3 separate IOStreamers, which would feel wrong, as I would fear the risk of them desynchronizing. Well, it won't really happen since I probably won't have any backpressure on the i_streams but still, it feels wrong to split up the IOstreamers. Or I would need to keep the previous value of non-updated ports in flops, which I'm already doing, but then the o_latch in IOStreamer would be a waste.
Sometimes I want to use the previous value for more than just keeping certain ports unchanged. Like for example in the case of the xres signal, I want to make a decision in the state machine based on whether it was asserted or not. And in the case of sclk I want to know in which half ot the clock cycle I was, so I can restart the timer to count the low side of the clock automatically.
So it seems like in all of these cases I have to maintain my own flopped versions of these signals anyway, and IOStreamer doesn't help me with that. It also doesn't help me with sampling the data signal, at least not the way I have it now, because I was paranoid and decided to sample the data signal after synchronizing it with an FFSynchronizer. The sdata signal can be non-synchronous, but to be fair it should only ever be non-synchronous when we're doing polling. When we're shifting bits from the device, it's expected to be synchronous, so to be fair, I could use the non-FF-synchronized version of the signal for shifting, and the synhronized signal for polling, and yeah, in that case I could use IOstreamer to abstract away the details of when the FFBuffer samples the input. But still using IOStreamer in this case feels a bit less intuitive to me.

So the issue here is that the bare state machine (and the ancillary stuff around it) is extremely complex and I don't know if I'll have time to review it anytime in the next 3 to 9 months.

I made some more changes to improve readability:

I factored out the _nxt / _ff verilogisms into a class PinDriver, to avoid code duplication and to separate concerns. Should be more readable this way. It's not a component, it's just a way to group code for readability.
I used amaranth structlayout and unionlayout, to more readably describe the command byte. Unfortunately when I tried to build the command byte using this feature, so I don't have to hard-code bit offsets on the python side (see here: https://github.com/purdeaandrei/glasgow/commit/ff83059ae55d392b348a86598c4aeaac6aee0cc0 ) my code became twice as slow. Looks like contructing a Const() object for a single command byte takes 0.14 milliseconds! So I fell back to hardcoding the offsets on the python side, but I added some asserts that check the offsets are correct, so if in the future someone changes the data structure, the assert will alert them to update the python side too.

Not sure if it can help with the review, cause it ended up a bit ugly, but I also made a mermaid chart for the SEND_BITS flow:
here


Catch empty lines in docstrings

Describe the feature you'd like
It might be nice to catch empty-line formatting  like:
Args:
   arg1: stuff

   arg2: stuff

when it could be
Args:
   arg1: stuff
   arg2: stuff

Looking through our code, it seems like there are places we actually allow this : https://github.com/aws/amazon-braket-sdk-python/blob/main/src/braket/aws/aws_quantum_task.py#L112
So I'm not sure if it should be an error or not.


refactor: "header, content, footer" three-stage layout to "aside, content" two-column layout

For more suitable widescreen display effects and navigation capabilities.
now
Too distracting for viewers, and the header is easy to create a sense of fragmentation.

Done


Cmake error on Debian 9: set_target_properties with incorrect number of parameters

I try to compile the projects under Debian 9.0 on a virtual machine but get an error
==
$ cmake -DCMAKE_INSTALL_PREFIX=/usr ..
-- The CXX compiler idetification is GNU 6.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compiler features
-- Detecting CXX compiler features - done
CMake Error at src/libifm3d_camera/CMakeLists.txt:75 (set_target_properties):
set_target_properties called with incorrrect number of arguments.
CMake Error at src/libifm3d_camera/CMakeLists.txt:86 (install):
install TARGETS given no LIBRARY DESTINATION for shared library target "iflm3D_camera_shared".
(...)
How can I solve this?

@R1MCAI sorry for the late reply, I am currently on the road. The issue you have reported is most probably related to some missing variable assignment. To debug this we do need the file  src/libifm3d_camera/CMakeLists.txt which is located in your build folder.

CMakeLists.txt
Attached the needed file.

@R1MCAI Sorry, it was my fault. I assume the issue is the missing xmlrpc library. Can you please check if the following packages are installed?
apt-get update && apt-get install -y libboost-all-dev \
    jq \
    libcurl4-openssl-dev \
    libgtest-dev \
    libgoogle-glog-dev \
    libxmlrpc-c++8-dev \
    libopencv-dev \
    libpcl-dev \
    libproj-dev \
    build-essential \
    coreutils \
    cmake

missing packages are
libjq1 libonig4 jq libcurl4-openssl-dev libgflags-dev libgoogle-glog-dev
several suggested packages (not listed here but included in the update
after installation: still the same error on cmake :-(

reading in details the messages I have more information

Hope it helps

In this case I need to find a box to fire up a debian 9.0 installation. This might take a few days.

I have installed the opencv-only build yesterday on Debian 9 and it worked fine. Tell me, if you want files or log output posted.

Thanks, for the update. I'll reach out to you when I need more information.

I do have libopencv-dev installed, with several other packages.
Aptitude doesn't propose a opencv-only package.
@AlfTetzlaff : is the build you done a package or a specific sub version of the modules?
I've added python-opencv package (with aptitude) but no change, still error.

You don't need any python packages. Check your $PATH environment variable. Mine looks like this:
bash: /usr/local/bin:/usr/bin:/bin:
Try to delete your build folder and then cmake & build again. I followed the instructions for the build that doesn't require PCL.
cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_MODULE_OPENCV=ON -DBUILD_MODULE_IMAGE=OFF ..
In addition to that, check where your googletest cmake files are located at. Mine were in /usr/src/googletest, but ifm3d expects them in /usr/src/gtest. So it could be, that you have to give the right path by setting
-DGTEST_CMAKE_DIR=/usr/src/googletest

my path is
/usr/local/bin;/usrt/bin
same status with proposed command

Ok, it looks like you want to compile only the camera module, is that correct? I assumed you want to build the "whole thing" and gave instructions for that. If you want to build everything, you have to run the commands from the ifm3d base directory (which is three up from what you showed). There you have to create the build folder and so on...
I'm now guessing: If you want to compile certain models only, you still have to work from the ifm3d base directory. There, you have to run cmake, but with some -D... command. Type cmake -D and hit tab twice. It will show up ~100 options. Among those you find -DBUILD_MODULE_xyz, where you can choose the module to build. You then have to give for example -DBUILD_MODULE_CAMERA=ON.

I'd just like to "compile something related to this ifm3d system". I tried a first step in camera directory and got the error, that's why I stopped and asked for support.
From which folder should I launch the command to get a result?

I tried from ~/Workspaces/LovePark/ifm3d/build and I get a result

Now, I have to go on tests.
thanks for your efficient support.

If your problem is solved, feel free to close this issue :)

it looks OK.
Now I'll look for time to test the functions and what we can do in our application.
(for information, the application is getting only a line or a column of images (X/Y/A/Confidence) instead of all the pixels, to reduce work load on the treatment machine. If ncessary I'll open another topic).

@R1MCAI The warning above is due to typo. You have used MAKE_INSTALL_PREFIX the right one is CMAKE_INSTALL_PREFIX. Sometime with CMake it helps to erase the build folder and restart from the beginning. I am not sure if I got your question about the line or column right. It seems you only get a line of data. and expect a whole image. You can check out the examples project how to deal with the data. https://github.com/lovepark/ifm3d-examples there for example is one cpp file which stores the amplitude data and the distance data so you can see it is a complete image: https://github.com/lovepark/ifm3d-examples/blob/master/ex-file_io.cpp

oh yes, little typo, great effet. Congratulations.
Anyway the command sudo cmake -DCMAKE_INSTALL_PREFIX=/usr .. in folder modules/camera/build gives always
CMake Error at src/libifm3d_camera/CMakeLists.txt:75 (set_target_properties):
set_target_properties called with incorrect number of arguments.
CMake Error at src/libifm3d_camera/CMakeLists.txt:86 (install):
install TARGETS given no LIBRARY DESTINATION for shared library target
"ifm3d_camera_shared".
CMake Warning at CMakeLists.txt:20 (message):
Skipping libifm3d-camera unit tests!
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present.  A line of code such as
cmake_minimum_required(VERSION 3.7)

should be added at the top of the file.  The version specified may be lower
if you wish to support older CMake versions for this project.  For more
information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Configuring incomplete, errors occurred!
See also "/home/utilisateur/Workspaces/LovePark/ifm3d/modules/camera/build/CMakeFiles/CMakeOutput.log".
See also "/home/utilisateur/Workspaces/LovePark/ifm3d/modules/camera/build/CMakeFiles/CMakeError.log".
For my need, it is opposite: I always get the whole images from O3D302 when I'd need olny 1 column or 1 line. Objectif is to reduce load on TCP and on reception machine. Working with your "source" driver and firmware is a direction suggested by ifm.

I think the error is due to the fact, that the CMakeLists.txt files in the module folders are automatically created. If I'm not totally wrong, they are just not intended to be used by you. (?)
Regarding you line problem: I think you can somehow set a region of interest (ROI) for the camera. If you set it to be a line, your problem should be solved. But I don't know how to set it, or if the driver supports it.

ROI will not give the information on each point of the line, almost an average value. I need the profil on the line: "simply" extracting a line from X/Y/Z images, if possible without getting all the data from the sensor, just what is needed.


[question] exporting model to tensorflowjs

First of all, great work with the amazing library!
I am trying to convert the underlying tensorflow model to tensorflowjs to be able to use the model on the browser. But I could not make the conversion work
I followed this github issue to create the necessary tensorflow files using the code:
def generate_checkpoint_from_model(model, checkpoint_name):
        tf.saved_model.simple_save(model.sess, checkpoint_name, inputs={"obs": model.act_model.obs_ph}, outputs={"action": model.action_ph})

Then I try to transform the model using tensorflowjs_converter
tensorflowjs_converter --input_format=tf_saved_model test/ web_test

However, it gives me the following error:
Unable to lift tensor <tf.Tensor 'loss/action_ph:0' shape=(?,) dtype=int32> because it depends transitively on placeholder <tf.Operation 'loss/action_ph' type=Placeholder> via at least one path, e.g.: loss/action_ph (Placeholder)

I created the following colab notebook with the error so you can try it.
Does anyone knows how to make this conversion work?
Thank you for the help

You are trying to save the action placeholder used in PPO training (part of PPO agent), but for inference you only need the trained policy and its placeholders (model.act_model). The code on colab runs without errors by changing call to simple_save to this:
tf.saved_model.simple_save(model.sess, checkpoint_name, inputs={"obs": model.act_model.obs_ph},
                                   outputs={"action": model.act_model._policy_proba})

The value of _policy_proba depends on the environment/algorithm.
Thanks for offering the colab code, btw! It really made debugging this very easy :)

Thanks a lot for taking the time to look into it,  @Miffyli ! I am glad the colab helped.

now that we have examples on how to export trained agent to pytorch/java/tfjs could be good to add links to the issues in the documentation, no?

@araffin
I had a similar thought. I can write up a summary of the results of the issues and bit of instructions on manually creating the network and then loading the parameters. Export that way is not perfect as it does not store the graph / how layers are connected, though, but it is a start.

Adding it to the documentation would be great! I bet it would help a lot other people in the same situation.

@pedrohbtp @araffin @Miffyli
Thanks for your work in githib.
How to use your stable.baselines model and environment in production using keras or tf for live time series data.
Thanks
Swapnil

@sbhadade
There are no examples on this, other than the documentations on exporting models and example on how to use trained model without training

@Miffyli
I deployed this snake AI running on tensorflowjs after exporting it following the guidelines here. In the browser it is used only for inference and not for training as discussed previously.
If someone wants a reference of it, here it is: https://www.pedro-torres.com/snake-rl/

@pedrohbtp
Thanks for sharing this! It is always refreshing to hear things worked out and there weren't bigger bottlenecks after the export :). Indeed looks like the agent is still intact in the javascript model.

Looks cool, when you think your project is ready you can also submit a PR to add it to the project page ;)

@araffin
Sounds good!
What is in your mind on how to include it?
Would you want to add in the exporting section of the documentation?

@pedrohbtp I was thinking about the project page: https://stable-baselines.readthedocs.io/en/master/misc/projects.html because the tensorflow js export is already present in the exporting section.

@pedrohbtp
I'm trying to do the same you were doing here. With a small difference: I have the pkl file generated after running the training command from the terminal (baselines.run .... --save_path=./myModel.pkl)
Is there any way to transform the pkl model to something tensorflowjs_converter would understand?

It seems you are using baselines and not stable-baselines...

@Miffyli simple_save code worked perfectly for me when converting PPO2 and MlpPolicy.
However, when I try to run tensorflowjs_converter on a PPO2 and MlpLstmPolicy I receive the following error:
 File "/Users/zeus/.local/share/virtualenvs/wt-agent-trainer-818OHLeT/lib/python3.7/site-packages/tensorflow_core/python/ops/op_selector.py", line 413, in map_subgraph
    % (repr(init_tensor), repr(op), _path_from(op, init_tensor, sources)))
tensorflow.python.ops.op_selector.UnliftableError: A SavedModel signature needs an input for each placeholder the signature's outputs use. An output for signature 'serving_default' depends on a placeholder which is not an input (i.e. the placeholder is not fed a value).

Unable to lift tensor <tf.Tensor 'output/Softmax:0' shape=(1, 2) dtype=float32> because it depends transitively on placeholder <tf.Operation 'input_1/dones_ph' type=Placeholder> via at least one path, e.g.: output/Softmax (Softmax) <- model/pi/add (AddV2) <- model/pi/MatMul (MatMul) <- model/Reshape_2 (Reshape) <- model/concat_1/concat (Identity) <- model/mul_4 (Mul) <- model/Tanh_3 (Tanh) <- model/add_2 (AddV2) <- model/mul_3 (Mul) <- model/Tanh_2 (Tanh) <- model/split_3 (Split) <- model/add_1 (AddV2) <- model/add (AddV2) <- model/MatMul_1 (MatMul) <- model/mul_1 (Mul) <- model/sub_1 (Sub) <- model/Squeeze_1 (Squeeze) <- model/split_1 (Split) <- model/Reshape_1 (Reshape) <- input_1/dones_ph (Placeholder)

Any ideas on how I can best resolve or debug the error better?
Thanks for the great library!

I am not familiar with saving models like this, but sounds like you are missing some of the placeholders/inputs to the graph. LSTM policies take in more inputs than non-lstm policies (mask and state), which you need to account for.


I find why the translation didn't make for the standard distribution : foundryvtt error. Just for information

I find where the error come from !
in the game the variable in french language :
game.i18n.translations.Genesys.Characteristics
Object { Brawn: "Brawn", Agility: "Agility", Intellect: "Intellect", Cunning: "Cunning", Willpower: "Willpower", Presence: "Presence" }
Agility: "Agility"
Brawn: "Brawn"
Cunning: "Cunning"
Intellect: "Intellect"
Presence: "Presence"
Willpower: "Willpower"
: Object { … }
and if you see the order of load of lang JSON :
Foundry VTT | Loaded localization file systems/genesys/lang/fr.json foundry.js:7533:15
Foundry VTT | Loaded localization file modules/fr-core/fr.json foundry.js:7533:15
Foundry VTT | Loaded localization file systems/genesys/lang/en.json foundry.js:7533:15
Foundry VTT | Loaded localization file lang/en.json foundry.js:7533:15
Something go wrong and crash the game.i18n.translations.Genesys.Characteristics (and some other,  Tabs it's ok but, SkillCategory )
if I modify the variable into Brawn to Vigueur, I have the good result... Strange no ? I try to find why the program crush this particular object.
I hope I was correct explain...

To help french, pour aider les français qui souhaiterai changer les bonnes valeurs de traduction vous pouvez faire une marcro "Script" avec le code ci dessous :
game.i18n.translations.Genesys.Characteristics.Brawn = "Vigueur"
game.i18n.translations.Genesys.Characteristics.Agility = "Agilité"
game.i18n.translations.Genesys.Characteristics.Intellect = "Intelligence"
game.i18n.translations.Genesys.Characteristics.Cunning = "Ruse"
game.i18n.translations.Genesys.Characteristics.Willpower = "Volonté"
game.i18n.translations.Genesys.Characteristics.Presence = "Présence"

I can't simply reproduce this problem. Here's a test world on FVTT v11.

What version of FoundryVTT are you using?
What version of the system are you using?
Can you give me GM access to your world or send a backup of it?

Thank for you answer. I have the v.11 build 325. And you answer give me a indice and, i find the reason : it's a module ! I have desatived all module and I have the good translation. Thank again for you job and for the answer...
I have made a HUD Module, and I have a make a error  : it's now correcting and recieves my Apologize

Good thing it was a simple fix. 😄


Add fully qualified names usage on deployer

Closes #562

Also, if it's not too hard, can we recover that 0.54% to make coverage pass?

Going to fix the tests coverage on a following PR, as is not that easy.


Do not keep UEFS mounted engines mounted across build runs

This continues to cause intermittent issues for some reason. The underlying cause will be some bug in the storage virtualization/VHD layer, but right now we just need to get builds stable. Thus we should not keep mounts across build runs and instead have a fresh engine every time.

I believe this is solved, as the only way to skip UEFS unmounting engines after the build is to set the UET_UEFS_SKIP_UNMOUNT explicitly to 1.


Add video intelligence GAPIC

@swcloud I am reviewing this now.

@swcloud The build appears to be failing on Rubocop errors. Can you either remove Rubocop from the Rakefile, or else add a .rubocop.yml file excluding the source directory? To my knowledge, we do not run Rubocop on GAPIC files in other packages.

@swcloud Should I update the Rakefile and/or .rubocop.yml to match those in google-cloud-monitoring?

I am OK with my commits being contributed to this project.

The build is now failing with 3 unit test errors. The cause is:
RuntimeError: Could not load the default credentials.

which makes me think that the unit tests do not adequately mock all requests to the live service.

Yep, makes sense.

I've rebased this branch to master to pick up a fix to the CircleCI configuration. It appears RVM is no longer installing the bundler gem by default now.

This PR has seen a lot of churn because of the directive to get this released quickly. I suggest we squash the PR into one commit when merging.

@swcloud Is it your intention that this gem is added as a dependency on the google-cloud gem?

@blowmage There is a whitelist in the top-level Rakefile's google_cloud task that needs to be updated.