Support For Shared Devices

It seems that the plugin will not load shared Flume devices. Is it possible to support shared devices? When I sign into the portal page I can see the data for the device. Thanks.

I created a pull request to load shared devices as well as primary devices for the account https://github.com/bwp91/homebridge-flume/pull/42
I see you have a method to pull usage data, can HomeKit display that?

Thanks! this is included in new beta version 2.1.0-beta.0, will make a release of this soon!

@bwp91 Happy to help and thanks so much for including it. Will the plugin expose more than leak detection in the future or is that all that is allowed in HomeKit?

honestly, i don’t know!
truth is, i don’t actually own a flume device.
i created this plugin a while back from a request and i think also because an existing plugin wasn’t working properly, so i don’t develop this plugin as much as i do my other plugins where i actually own devices.
i think i have some extra information that is available in the Eve homekit app.
what other stuff were you looking for?
if you are up for it, please feel free to create any PR to enhance plugin!

@bwp91 I know very little about HomeKit and what can be exposed for the device. I was able to make that PR to add the shared device which seemed to make the leak detector show up for me. I saw there was a query in there to pull daily, current month, and previous months data but I don't see that anywhere in HomeKit.

The Home app is very limited to what it can display. There are some extra values that can be seen in the Eve HomeKit app - dunno if you have this? it’s basically a better home app!

Ah, I will install that a take a look to see if more is exposed. I guess at the end of the day if Home tells me there is a leak that is all I really care about.

Should be included as part of new version of plugin :)
Thanks again for your time on this


How to manually add charging sessions to complete the history of the monitored car?

I started to use TeslaMate when my car was about a month old. Therefore there have been some charging sessions which had not been logged into TeslaMate, but not too many. I kept the track of the sessions in a notebook. It would be nice to restore them somehow to keep the charging history of my Tesla in TeslaMate complete from the date zero. My goal would be to have the Dashboards "Charges", "Charging Stats" and maybe "Efficiency" (Consumption net, gross, Logged Distance) as thorough as possible.
Could you suggest what would be the best way how to achieve it? Is there some sort of import from .csv file (utilize the import from TeslaFi?) or some manual way how to type these sessions in? Is it sufficient to add these sessions only to "charging_processes" table or is it more complex and it can ruin the consistency of the entire system (for example there is no odometer attribute in the "charging_processes", so I assume it is kept elsewhere)? I.e. do you also need to add some drives to "drive" table or anything other to keep the consistency?

Hi @petariga,
I have added some charging sessions manually to the charging_processes table, and it worked. I have been concerned that perhaps a later update of TM may detect invalid data and remove them, so it's not necessarily the case that this is a foolproof approach but it did work for me in tracking charging consumption and cost.
When I get some time, I'll go back through my SQL history (if it is still there) and find the insert commands that I used. You'll need to look up a few values, such as the place location ID for the charger (if you haven't visited there since, you'll have a challenge there) and also you may need to adjust the timing to account for timezone.
If you have charged at the same location since, my recommendation is to look at the charging_processes row for that charge and grab the entire row and the column headings. This will help you a lot to construct a charging session manually.
For some columns (such as distance since last charge, perhaps SOC before and after) you may need to just use 0, which will show a blank in the table in grafana for those values. It hasn't impacted any of the grafana data from my perspective.

Hi @ngardiner,
Thank you for your kind reply. I do have the data for charging_processes table ready including the location, distance since the last charge, SOC before & after. However, if you succeed to dig up the exact SQL command you used to submit or import these additional sessions, it would be definitely helpful.
Have you anyhow reflected the sequential order of these sessions? The sessions to be added happened before the others already presented in the db, however they will have a higher id than the later. Does it matter or is it enough to have a correct date & time for each session? Or shall I export all of them, add the historical sessions, reorder them, clear the entire table and reimport them?

I am also interested in doing this if anyone comes up with a solution.

I would also like to add charging sessions manually.
In my case the car was charging underground with a bad internet connection. So TeslaMate was not save any date about this session.

So, is there a way add / change data manually in the database?
Is there a preferred tool like phpMyAdmin etc.?

I am still hesitant to make the changes directly in the SQL db :-(.
I think that it is a little more complicated. The charging session table is cross connected to other tables and I am not sure how the sequence of charging sessions is sensitive on jumping back and forth in time - if you add older session after the newer one.
From my point of view the best way would be to define an importing csv structure and importing script or to make a web input interface with all required atributes and type in each missing session there, of course with all the back-end importing stuff which would be needed to do not brake anything else or to do not cause any issues in other data.

Hi, it would be really helpful to be able to do that. I have an sd card corruption in my raspberry pi, I was able to restore a backup copy of 10 days before but I also have the teslamate db backups with the missing data. I've exported it, but now I'm not sure on how to import it in the restored db to fill the gap.
Any hints?
Thanks!

I created a simple module to synchronize lost/old charges into Teslamate.
There are two types of charges this module will sync, superchagers and other charges.
Syncing module
The module below does the following:

Retrieves the charge info for the charges.json file
Matches the charging location with the available supercharges in supercharers.json
Inserts (if needed) the address for the charging location
Inserts a position for the charging location
Inserts a dummy charge because the Grafana dashboard expects a charge_process to have a max_voltage value set (see related PR).
Inserts the charging process

Prerequisites
I recommend you first backup your data (if you haven't already) or test this in a safe environment before messing with your database.
For superchargers you will need to:

Retrieve the full JSON with your charges from this URL and save it in charges.json

You can get it by inspecting the web browser on this page

The list of Tesla superchargers from HERE and save it in superchargers.json

Inspect the API responses in this page to get the JSON

For other chargers the process is not that automated and you will need to specify by hand the charges to sync:
@non_superchargers [
    %{
      start_date: DateTime.utc_now,
      end_date: DateTime.utc_now,
      cost: 23.57,
      postcode: "1234",
      kwh: 23.97,
      latitude: "37.3940974",
      longitude: "-122.1523805"
    }

After that, connect to the Teslamate node and call the module:

For superchargers TeslaMate.ChargeHistorySync.sync("./charges.json")
For other charges TeslaMate.ChargeHistorySync.sync_custom()

Considerations
This module might not work for some specific cases (non-matching postcodes, address...). If that is your case, I recommend you fix manually the JSON to match the data or modify the code with whatever your need.
The code below should be idempotent, so in case it fails for you running it again won't duplicate the charges in your database.
The code
defmodule TeslaMate.ChargeHistorySync do
  alias TeslaMate.Log.ChargingProcess
  alias TeslaMate.Locations.Address
  alias TeslaMate.Log.Position
  alias TeslaMate.Log.Charge

  alias TeslaMate.Repo

  import Ecto.Query, warn: false

  @superchargers "superchargers.json"
                 |> File.read!()
                 |> Jason.decode!()
                 |> Map.get("results")

  @non_superchargers []

  def sync_custom() do
    Enum.each(@non_superchargers, fn %{
                                       start_date: start_date,
                                       end_date: end_date,
                                       cost: cost,
                                       postcode: postcode,
                                       kwh: kwh,
                                       latitude: latitude,
                                       longitude: longitude
                                     } ->
      TeslaMate.ChargeHistorySync.insert_data(
        start_date,
        end_date,
        cost,
        kwh,
        postcode,
        latitude,
        longitude
      )
    end)
  end

  def sync(path_to_file) do
    path_to_file
    |> File.read!()
    |> Jason.decode!()
    |> Map.get("data")
    |> Enum.each(fn charge ->
      TeslaMate.Repo.transaction(fn ->
        start_date =
          charge
          |> Map.get("chargeStartDateTime")
          |> Timex.parse!("{ISO:Extended}")

        IO.puts(
          "Sync charge for day #{inspect(start_date)} at #{inspect(charge["siteLocationName"])}"
        )

        min = Timex.shift(start_date, seconds: -30)
        max = Timex.shift(start_date, seconds: 30)

        from(
          charging_process in ChargingProcess,
          where: ^min <= charging_process.start_date,
          where: ^max >= charging_process.start_date
        )
        |> Repo.one()
        |> Repo.preload(:address)
        |> case do
          nil ->
            # IO.puts(
            #   "No match for charge for day #{inspect(start_date)} at #{inspect(charge["siteLocationName"])}"
            # )

            sync_charge(charge)

          charging_process ->
            IO.puts(
              "[OK] Charge matches for day #{inspect(charging_process.start_date)} on #{charging_process.address.name}, #{charging_process.address.city}}"
            )
        end

        IO.puts("")
      end)
    end)
  end

  def sync_charge(charge_info) do
    start_date =
      charge_info
      |> Map.get("chargeStartDateTime")
      |> Timex.parse!("{ISO:Extended}")

    end_date =
      charge_info
      |> Map.get("chargeStopDateTime")
      |> Timex.parse!("{ISO:Extended}")

    cost =
      charge_info
      |> Map.get("fees")
      |> Enum.map(fn
        %{"pricingType" => "PAYMENT", "totalBase" => cost} ->
          cost

        %{"pricingType" => "CREDIT", "totalBase" => cost} ->
          cost

        _ ->
          nil
      end)
      |> Enum.reject(&is_nil/1)
      |> List.first()

    if is_nil(cost) do
      IO.puts("No price found for charge on the #{inspect(start_date)}")
    end

    location =
      charge_info
      |> Map.get("siteLocationName")
      |> String.trim()

    %{
      "gps" => %{
        "latitude" => supercharger_latitude,
        "longitude" => supercharger_longitude
      },
      "address" => %{
        "zip" => supercharger_postcode
      }
    } =
      _supercharger =
      Enum.find(@superchargers, fn
        %{"name" => ^location} = supercharger ->
          supercharger

        %{"name" => _other_location} ->
          nil
      end)

    energy_added =
      charge_info
      |> Map.get("fees")
      |> Enum.reduce(0, fn
        %{"pricingType" => "PAYMENT", "usageBase" => kwh}, total_kwh ->
          total_kwh + kwh

        %{"pricingType" => "CREDIT", "usageBase" => kwh}, total_kwh ->
          total_kwh + kwh

        _, total_kwh ->
          total_kwh
      end)

    insert_data(
      start_date,
      end_date,
      cost,
      energy_added,
      supercharger_postcode,
      supercharger_latitude,
      supercharger_longitude,
      location
    )
  end

  def insert_data(
        _start_date,
        _end_date,
        _cost,
        _energy_added,
        _postcode,
        _latitude,
        _longitude,
        location \\ ""
      )

  def insert_data(
        _start_date,
        _end_date,
        _cost,
        _energy_added,
        nil,
        _latitude,
        _longitude,
        location
      ) do
    IO.puts("[ERROR] Required postcode but is missing for `#{location}`")
  end

  def insert_data(
        start_date,
        end_date,
        cost,
        energy_added,
        postcode,
        latitude,
        longitude,
        _location
      ) do
    from(address in Address,
      where: address.postcode == ^postcode
    )
    |> Repo.all()
    |> List.first()
    |> case do
      nil ->
        IO.puts("[WARN] Creating new address for #{postcode}")

        {:ok, %{id: address_id}} =
          TeslaMate.Locations.find_address(%{
            latitude: latitude,
            longitude: longitude
          })

        insert_charge(
          start_date,
          end_date,
          cost,
          energy_added,
          latitude,
          longitude,
          address_id
        )

      %{id: address_id} ->
        insert_charge(
          start_date,
          end_date,
          cost,
          energy_added,
          latitude,
          longitude,
          address_id
        )
    end
  end

  #
  # Private functions
  #

  defp insert_charge(
         start_date,
         end_date,
         cost,
         energy_added,
         latitude,
         longitude,
         address_id
       ) do
    position_attrs = %{
      card_id: 1,
      date: start_date,
      latitude: latitude,
      longitude: longitude
    }

    %Position{id: position_id} =
      _position =
      %Position{car_id: 1}
      |> Position.changeset(position_attrs)
      |> Repo.insert!()

    IO.puts("[OK] New position `#{position_id}`")

    charging_process_attrs = %{
      start_date: start_date,
      end_date: end_date,
      address_id: address_id,
      position_id: position_id,
      duration_min: Timex.diff(end_date, start_date, :minutes),
      charge_energy_added: energy_added,
      charge_energy_used: 0,
      cost: cost
    }

    %{id: charging_process_id} =
      _charging_process =
      %ChargingProcess{car_id: 1}
      |> ChargingProcess.changeset(charging_process_attrs)
      |> Repo.insert!()

    charge_attrs = %{
      date: start_date,
      charge_energy_added: 0,
      charger_voltage: 200,
      charger_power: 0,
      ideal_battery_range_km: 0
    }

    %Charge{charging_process_id: charging_process_id}
    |> Charge.changeset(charge_attrs)
    |> Repo.insert!()

    IO.puts("[OK] New charging process `#{charging_process_id}`")
  end
end

@qgadrian I am very new to all of this and have Teslamate running using docker but my limited understanding means I am not sure how to implement your code to import the data. I can understand how to add the missing data in to the code but the section on connecting to the Node and then calling the module is just escaping me right now

You can create a new Docker container that includes the sync modules and the charge data, then you can run the sync directly from the container.
Another option, if you have access to the database, is to run the project locally and run the sync module locally using iex directly.
Hope that helps.

@qgadrian I am very new to all of this and have Teslamate running using docker but my limited understanding means I am not sure how to implement your code to import the data. I can understand how to add the missing data in to the code but the section on connecting to the Node and then calling the module is just escaping me right now

You can create a new Docker container that includes the sync modules and the charge data, then you can run the sync directly from the container.
Another option, if you have access to the database, is to run the project locally and run the sync module locally using iex directly.
Hope that helps.

Thanks.  I think its a bit beyond my skill set :-). I couldn't workout how to create the docker container from your code which then got me stuck going any further.

Again thanks a lot qgadrian. Compilation works fine now.
But a database error occurs when launching TeslaMate.ChargeHistorySync.sync("/tmp/charges.json") due to a contraint NOT NULL for position_id  in table charging_processes (Postgrex.Error) ERREUR 23502).
Get a message "[OK] New position 99999" but id 99999 not in table positions ; maybe because it's a transaction (TeslaMate.Repo.transaction).

Found solution change
%{id: charging_process_id} =       _charging_process =       %ChargingProcess{car_id: 1}       |> ChargingProcess.changeset(charging_process_attrs)       |> Repo.insert!()
with
%{id: charging_process_id} =       _charging_process =       %ChargingProcess{car_id: 1, position_id: position_id}       |> ChargingProcess.changeset(charging_process_attrs)       |> Repo.insert!()

I've found over the past several months that Teslamate is missing much more data from charges and drives. I did a full backup and restore several times. I even deleted and rebuilt docker and restored Teslamate from a backup but none if it worked. I decided to give Tessie a try and imported my data from Teslamate and all the missing data shows up in Tessie. I'm convinced there is some sort of bug in Teslamate because I have random data missing from 2 different cars and the dates affected are different on both cars.


➖ Do not require backports in Python >= 3.7

Signed-off-by: Filipe Laíns<EMAIL_ADDRESS>

This should avoid some extra package installation for some users, as well as act as a reminder to remove the dependency and code when you move to Python 3.7 as the minimum version :blush:

Awesome, thanks @FFY00! :rocket:


test: add backup e2e scenario

Description:
Add end-to-end test for backup feature
Checklist:

[ ] My PR follows the contribution guidelines of this project
[ ] My PR is free of third-party dependencies that don't comply with the Allowlist
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have checked the PR title to follow the conventional commit specification

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
35 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.001%) to 39.51%

Files with Coverage Reduction
New Missed Lines
%

org/hyperledger/identus/walletsdk/pluto/PlutoRestoreTask.kt
35
67.35%

Totals

Change from base Build<PHONE_NUMBER>:
0.001%

Covered Lines:
2620

Relevant Lines:
5896

💛  - Coveralls

@amagyar-iohk what do to with this?


How can Giscus load on article load?

Hey Timothy, thanks for this template. Loving it!
I saw some examples in your readme that have the Giscus iframe loaded when directly on a page loading, do you know how we can set up the template to do so? (ex: https://0xchai.io/blog/intro-to-ethersjs)
Thank you!

You can adapt it to the version over here which would load immediately - https://github.com/timlrx/pliny/blob/main/packages/pliny/src/comments/Disqus.tsx

If someone else is looking to do the same thing, you'll need to delete/comment the two lines in the useEffect in Giscus.js:
  useEffect(() => {
    // commenting these lines enable giscus to load upon page loading instead of clicking on "Load comments"
    // const iframe = document.querySelector("iframe.giscus-frame")
    // if (!iframe) return
    LoadComments()
  }, [LoadComments])

Thank you for your quick answer! You can close the issue

If you use @pliny/cli and the starter blog, doing this is as simple as changing the default value of loadComments to true in PostLayout.tsx, see:
https://github.com/timlrx/pliny/blob/67c29c8e3e6c3bf4520b7aa9b47737ee6c853aa6/starter-blog/layouts/PostLayout.tsx#L36


handle kernel reset and interrupt

For #6212

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

Codecov Report

Merging #7131 (adcb333) into main (b888c23) will increase coverage by 0%.
The diff coverage is 16%.

@@          Coverage Diff          @@
##            main   #7131   +/-   ##
=====================================
  Coverage     64%     64%
=====================================
  Files        362     362
  Lines      22850   22902   +52
  Branches    3428    3435    +7
=====================================
+ Hits       14823   14867   +44
- Misses      6721    6722    +1
- Partials    1306    1313    +7

Impacted Files
Coverage Δ

src/client/datascience/jupyter/kernels/types.ts
100% <ø> (ø)

src/client/debugger/jupyter/kernelDebugAdapter.ts
5% <0%> (-1%)
:arrow_down:

src/client/debugger/types.ts
100% <ø> (ø)

src/client/debugger/jupyter/debuggingManager.ts
27% <9%> (-1%)
:arrow_down:

src/client/datascience/jupyter/kernels/kernel.ts
62% <50%> (-1%)
:arrow_down:

...lient/datascience/variablesView/notebookWatcher.ts
86% <0%> (-4%)
:arrow_down:

...client/datascience/kernel-launcher/kernelDaemon.ts
53% <0%> (-2%)
:arrow_down:

src/client/datascience/baseJupyterSession.ts
63% <0%> (-1%)
:arrow_down:

src/client/datascience/types.ts
100% <0%> (ø)

...c/client/datascience/variablesView/variableView.ts
78% <0%> (+<1%)
:arrow_up:

... and 7 more


Consider making it easier/possible to determine which commit a build was made from

I'm interested in testing the new symlink support that @hammerg landed in 3dd8838c228565cca6eaa19418c02b6cbd847d74 once it makes it to https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/, but I don't see a good way to determine which (public) commit these builds are based on. The repo tags/branches are not currently helpful either, and from digging around in the .iso (in the viofs.inf file, for instance) I don't see this information, nor from digging around in the .rpm. Maybe a build-rev.txt file could be added to the download directory, or to the root of the .iso/.rpm files? :)

@vrozenfe can you push tags to upstream?

https://github.com/virtio-win/kvm-guest-drivers-windows/tags - tags should provide the picture for the content of each build


Update bullet_threading.scss for Logseq 0.9.6

Fixes https://github.com/pengx17/logseq-plugin-bullet-threading/issues/18
Before

After

Thanks , @omnisyle 👍


Fix duplicate -instantsendnotify invocation

We shouldn't be calling UpdateWalletTransaction while removing IS-locks. Not sure how it got there...
Actual changes https://github.com/dashpay/dash/commit/4feea5a144835d5fbf6e34149bc89b871fe06224?w=1#diff-9f8ffdc36e4e8ae82358e8fa2a6fd5e7L1121

Why so many whitespacing changes here?

Yeah, mixing refactoring and bug fixes is never a good idea. Fixed.


Primitive_Attribute has several properties that need multiple values set

Instead of passing one value and then setting the rest in the if statement, it would be better to make an object to hold all of the needed values.
Probably contain the var type, vec type, and the vec coord. Should be flexabile enough to use for color or tex cords.

Still need to fix in other model groups


Network connectivity monitor

Works with #6283

@y-zeng PR #6973 is finally in. Can you re-submit it after testing against the head?

Closing for inactivity, reopen if still needed.


Document clear-cache cookie in versions 9 and 10

@EnasAbdelrazek Should we mention the better approach for 10? Ideally, people shouldn't use the cookie directly. Maybe we should reference the new API in the description of the cookie for Mx10?

We have to update the Java API reference after releasing 10.13


How to use this syntax for IBOutlet views?

Instead of creating a new instance for a view, is there a possibility to fetch the existing instance and set attributes to it? I want to update attributes initially for IBOutlets views.

@dineshrajas you can use it with your IBOutlets, no new instance is created. Have a look at how then is implemented:
    func then(block: Self -> Void) -> Self {
        block(self)
        return self
    }

With Outlets you can simply:
self.myOutlet.then { // do stuff }

@dineshrajas, thank you for asking.
Since IBOutlet variables are initialized lately, you cannot use then with the property declarations. However, as @RuiAAPeres mentioned, you can use then just after the IBOutlets are created.

@dineshrajas for outlets it is very nice to use didSet property observer for that purpose. It will be called every time you set the property. First time it will be called by the system when instantiating view from xib/storyboard.
@IBOutlet weak var button: UIButton {
  didSet {
    //set button attributes
  }
}

+1 on @ilyapuchka solution, that's what I've been doing too. This can probably be closed - I don't think we're going to get anything better than that anytime soon


Make sure that kubeadm picks up pod CIDR for flannel

If the pod network CIDR is not picket up, flannel can't start successfully. @cynepco3hahue merge #756 too fast.
Signed-off-by: Roman Mohr<EMAIL_ADDRESS>

Confirmed that flannel comes up properly on both providers.


Add feature to aggregate timeseries at sub-annual time resolution

Please confirm that this PR has done the following:

[x] Tests Added
[x] Documentation Added
[ ] Description in RELEASE_NOTES.md Added

Adding to RELEASE_NOTES.md (remove section after adding to RELEASE_NOTES.md)
Please add a single line in the release notes similar to the following:
- (#XX)[http://link-to-pr.com] Added feature which does something

Description of PR
This PR implements a first version of an aggregate_time() feature: it applies a function (default sum) data given at a sub-annual time resolution to a yearly or more aggregated sub-annual time slide. The PR adds a new tutorial for this feature, to be extended in future PRs.
Examples:
df.aggregate_time(<variable>)  # to get the sum of `variable` over the entire year
df.aggregate_time(<variable>, value='summer', components=['june', 'july', 'august'],
    method='max')  # to get the maximum of `variable` over the summer months

rebased following release v0.5.0

Updated release notes, will merge when CI passed. Thanks a bunch here @danielhuppmann !


[API-8] Command error messages include exception information

If it is better to merge this into SpongePowered/SpongeAPI#2385 somehow, let me know please!
Right now, when running a command with a parsing error, you receive an error message like this (example is a Parameter.user() encountering a user who has never logged into the server before):

While descriptive, from a player's perspective it offers a lot more information than necessary. In asking about this on Discord, I received the following response from @dualspiral and was asked to add an issue to the tracker about it:

Right now - no. I believe that's a vanilla thing that's going on there as we integrate with Brig quite tightly.
It might become possible later, I have plans to decouple us from Brig a bit for a few reasons, meaning that we take more control over the messages. That's quite a big chunk of work I need to do, and I need to be able to sit down without distraction to do it, and I may not get chance to do so until March.

For the above error message, I would expect something more straight forward like just Could not find user with user name "SlowRiot" without the exception information.

https://github.com/SpongePowered/Sponge/issues/3594 needs to come first.


python: review Distro documentation

We need to do a major review of the Python docs for the "distro" page which talks a lot about automatic instrumentation, so it should probably be moved over into the Zero-code section and be reworked
Originally posted by @svrnm in https://github.com/open-telemetry/opentelemetry.io/pull/4912#discussion_r1698068136

Thanks for creating this issue @emdneto. Here's a bit more context for one of my comments over the original PR:

I think that we can discuss the topic further once there's a PR submitted over this issue.


feat: add k8s projects

Updated introduction section, about-me section
Minor bug, UI and typos fixed
Fixes issue #31

Vercel deployments and previews will fail: NodeJS v14.x is discontinued


elasticsearch_indices_docs for small clusters

Hello, looking for some insights here.
I use increase(elasticsearch_indices_docs{es_data_node="true"}[10m]) < 1 expression to check if my ES nodes are receiving new docs and it works great when checking big clusters who constantly getting data, however when using same expression for smaller clusters I constantly see that it shows that no new docs are being fetched although when taking a look inside cluster I can see that indices are growing in size.
Does someone have suggestions what to use as alternative or this is something to look at ES itself?

What are you looking at inside the cluster to know that it is growing in size? The elasticsearch_indices_docs metric looks at the number of docs in all indices across the node.

simply by checking with curl http://localhost:9200/_cat/indices?v and I see that shard size is increasing, however I came across info that on ES 7.0 there is no refresh until shard is in any search query https://www.elastic.co/guide/en/elasticsearch/reference/current/breaking-changes-7.0.html#_skipped_background_refresh_on_search_idle_shards. So this might be causing issues for doc count not updating as these clusters are not intensively used. Will be checking this after Holidays and will update issue accordingly. Thanks for taking time to respond 🚀

We tried introducing refresh_interval = 60s that solved our problem - index document count was getting refreshed continuously, however that resulted in higher load on cluster nodes, so we decided not to go this way. Instead we started monitoring elasticsearch_indices_merges_docs_total which more or less will let us know if cluster stops receiving traffic


Possible rounding issue with totals in TMC Summary Report

What Happened
The totals aren't adding up correctly in the TMC Summary Report.
What Should Happen
Staff shouldn't question the validity of these values, totals should make sense. We have a few paths forward: make sure the addition of integers is calculated as expected (e.g. 1+2=3) OR we should show decimals (e.g. 0.8 + 1.6 = 2.4) OR we add a disclaimer that these values are rounded and leave the values as-is (e.g. 1+2=2). Each of these approaches have pros/cons.
To Reproduce
Steps to reproduce the bug:

Go to Palmerston / College
Open the most recent TMC Summary Report
Scroll down to the OFF HR AVG section

Under NORTHBOUND approach, TRUCK mode, movements Left = 1, Thru = 0, Right = 2, and the Total (which is the sum of these values) is 2, where you'd expect to see 3.
Similarly, the totals for PED and BIKE are off by a few integers as well.
Screenshots

Additional Notes
Chatted with @candu about this briefly; this may be due to a rounding issue.
Possible solutions:

Add the rounded values to get the total (guessing this is what FLOW does)
Keep the totals as-is and add a disclaimer
Use decimals for small numbers

@aharpalaniTO suggested drawing up these three options and putting out a survey to see which option staff prefer (going to do this!).
Also need to talk with @jwrcoleman about whether accuracy vs. a cleaner, simpler visual display is more important. The bottom line is an inconsistency like this can lead to lower trust in the data (not good).

This was fixed by #837 - marking closed.


Improved sort section styling and added placeholder text for results(#27xhv5k)

Task linked: CU-27xhv5k Improve stying of items of sort section and add placeholder text for results on the find screen

https://user-images.githubusercontent.com/82817616/163970832-50965f7e-e36c-4949-8fd6-b2c68795e3db.mp4


Improve I2C slave library

Correctly handles the stop event
Supports reacting to a secondary I2C slave address (complete with it's own set of registers and callbacks)
Support for chips other than the CH32V003 by removing the GPIO initialization from the library

Tested on CH32V003 and CH32V203.

I will trust you on this one.

Good job @renzenicolai , thanks for merging @cnlohr .


Avoid bundling tests in binary wheels

BUG/PROBLEM REPORT / FEATURE REQUEST
What I did:

python3.9 -m pip download --no-deps fanstatic --only-binary :all:
unzip fanstatic-1.4-py3-none-any.whl

What I expect to happen:
Archive:  fanstatic-1.4-py3-none-any.whl
  inflating: fanstatic/__init__.py
  inflating: fanstatic/checksum.py
  inflating: fanstatic/compiler.py
  inflating: fanstatic/config.py
  inflating: fanstatic/core.py
  inflating: fanstatic/inclusion.py
  inflating: fanstatic/injector.py
  inflating: fanstatic/publisher.py
  inflating: fanstatic/registry.py
  inflating: fanstatic/wsgi.py
  inflating: fanstatic-1.4.dist-info/LICENSE.txt
  inflating: fanstatic-1.4.dist-info/METADATA
  inflating: fanstatic-1.4.dist-info/WHEEL
  inflating: fanstatic-1.4.dist-info/entry_points.txt
  inflating: fanstatic-1.4.dist-info/top_level.txt
  inflating: fanstatic-1.4.dist-info/RECORD

What actually happened:
Archive:  fanstatic-1.4-py3-none-any.whl
  inflating: fanstatic/__init__.py
  inflating: fanstatic/checksum.py
  inflating: fanstatic/compiler.py
  inflating: fanstatic/config.py
  inflating: fanstatic/core.py
  inflating: fanstatic/inclusion.py
  inflating: fanstatic/injector.py
  inflating: fanstatic/publisher.py
  inflating: fanstatic/registry.py
  inflating: fanstatic/wsgi.py
  inflating: fanstatic/tests/__init__.py
  inflating: fanstatic/tests/conftest.py
  inflating: fanstatic/tests/test_bundle.py
  inflating: fanstatic/tests/test_checksum.py
  inflating: fanstatic/tests/test_compiler.py
  inflating: fanstatic/tests/test_config.py
  inflating: fanstatic/tests/test_core.py
  inflating: fanstatic/tests/test_injector.py
  inflating: fanstatic/tests/test_injectorplugin.py
  inflating: fanstatic/tests/test_publisher.py
  inflating: fanstatic/tests/test_registry.py
  inflating: fanstatic/tests/test_slot.py
  inflating: fanstatic/tests/test_topbottominjector.py
  inflating: fanstatic/tests/test_wsgi.py
  inflating: fanstatic-1.4.dist-info/LICENSE.txt
  inflating: fanstatic-1.4.dist-info/METADATA
  inflating: fanstatic-1.4.dist-info/WHEEL
  inflating: fanstatic-1.4.dist-info/entry_points.txt
  inflating: fanstatic-1.4.dist-info/top_level.txt
  inflating: fanstatic-1.4.dist-info/RECORD

The tests usually are not required for non-source downloads and just bloat the distribution size (in this case, they require over 50 % of the distribution size).
What version of Python and Zope/Addons I am using:
Python 3.9.18 with fanstatic==1.4.

@stefan6419846 Thank you for your report. Do you have a suggestion how this request can be achived just for wheels? – We have the strong demand from upstream users (Linux distros) to include the tests in the sdist, so we cannot omit them from there.

It should work by modifying https://github.com/zopefoundation/fanstatic/blob/f27d7f1f627c5014e4065c83773b1b93328ce7a8/setup.py#L45 to use the exclude parameter accordingly: https://setuptools.pypa.io/en/latest/userguide/package_discovery.html#finding-simple-packages
AFAIK sdists will still ship all source files and ignore this line, but you can of course verify the results when looking at the log or output files after running the build with python -m build . to generate both the sdist and binary wheel.

I'll put it onto my list to experiment with this.


Expanded question set

Create as full a question set as possible to test fatigue in users

Pausing this. Doing cardsort in the lab to get a view on this.


Mamba-UNet vs. U-Mamba

Hello,
Interesting work! Coincidently, another work has a similar name (U-Mamba) as yours (Mamba-UNet):
https://github.com/bowang-lab/U-Mamba
Do you have any similarities or differences?
Regards,
Jing

Hi,
In short, UMamba is based on Original Mamba, and our Mamba-UNet is based on Visual Mamba.
Here is the reference of Visual Mamba:
Liu, Yue, et al. "Vmamba: Visual state space model." arXiv preprint arXiv:2401.10166 (2024).


When an unknown status code is hit... you get an unuseful exception

Would it be possible to change this to expose the code and message?
https://github.com/DAXGRID/typesense-dotnet/blob/092aa1f9ec81bd0e5aed6e9d43c69eb79c6aeae3/src/Typesense/TypesenseClient.cs#L713

Hi @jonathan-rvezy, yes, I'll take a look at this, this week.
// Rune


ignoreip belongs in jail.local, not fail2ban.local

name: Pull request
about: move ignoreip to jail.local. Fixes #15
Describe the change
Moved ignoreip to fail2ban_base_jail_configuration
Testing
Deployed using this fork on a Debian system. fail2ban-client get sshd ignoreip now returns the list of ignored ip addresses.

May I kindly asked why this hasn't been merged, @robertdebock @robert-de-bock? I ran into this issue exactly and this PR seems to solve it.


SpoutCam not showing

Hi Torin, Hi Dom, such a great work!!! I have a problem: SpoutCam is not showing in the webcam menu. I have downloaded the newest versions etc. I am on PC windows 10. What can I have done wrong? thank you soooo much!!!!!

Is it necessary to be online in order to run it properly?

Hi @georgfruth thanks for the kind words!
You don't need to be online at all for this to work, but it does use a local network port. It's possible you have something else running already, so you could try changing the MediaPipe port from 3001 to something else (3002 should do it).
If that doesnt work, if you can open the text port with Ctrl T and post a screenshot of what it says that will help figure out what is going on

Thank you Dom for your quick reply. Changing the port did not help. I have now installed touchdesigner on windows 11 and here spoutcam works and is now also selectable in the dropd
own menu. However, the mediapipe window shows RGB noise. Nothing is recognised. If I select the webcam (RAPOO no matter what resolution) in the dropdown menu, the mediapipe window is black. What could be the reason for this? Greetings George

Hmm thanks for the extra info. My guess is this is possibly a resolution issue. Currently the plugin only works at 1280 x 720 - can you confirm your camera supports that resolution, and the VideoDevice In TOP that sends the video to the SyphonSpoutout TOP is set to 1280 x 720 as well?

Hi Dom, it's exactly 1280 x 720 30fps
In the Spout register window, as in TD

Well this is a strange one indeed.
When you select your webcam as the source in the MediaPipe component, are you also deleting/disabling the VideoDeviceIn TOP? On my laptop I can only have my webcam used by 1 thing at a time, so if I have my webcam running in the VideoDeviceIn TOP it blocks MediaPipe from being able to use the webcam as a source.

Hi dom, I'm sorry, I had a typo in the spout register window. It works! I am sooo happy! I can select the webcam in the mediapipe container while it is running in the videodevin. However, the picture in the mediapipe window is then black. With spoutcam it works though. Now I have to send you money :) this is really a great thing

One question, is it possible to lower the resolution for mediapipe to process everything and combining the overlays with a higher resolution image later?

And is it possible to capture poses of more than one person?

Yeah, you could do that - if you add a transform TOP after the Video Device In TOP you can send the resized 720p version to Spout Out, and use the 1080p (or 2k or whatever) version in the rest of your project. I'd suggest piping the source resolution image into the cache in the example project so it can get re-synced with the output of MediaPipe. That cache TOP accounts for the few frames of delay that MediaPipe has doing all the detection work.
Currently MediaPipe can only detect the poses of 1 person, but I suspect there will be improvements to that down the road, and we'll try and implement them once Google release those updates.


[test_conf_bash.sh] Adjust testdata directory

Since it is now intended to be called from another script on the same dir (too adhoc...needs an optimized solution).

Ok, set -e doesn't seem to catch this for instance. We need better error catching:
https://travis-ci.org/130s/hut_10sqft/jobs/207243626#L6887
cp: cannot stat ‘./testdata1’: No such file or directory


PR1 to procedures only happening in first PR1

PR1 to Procedure is only happening for the first PR1. The converter should loop through all the PR1s a message has and convert each one into a procedure resource in the bundle.

Thanks for reporting. We will look into it.

It will be fixed in the following pull-request, thanks for your feedback :)

This pull request #160 is meant to solve this issue, please validate your case after this PR is merged.

We have the latest release V3.2, in which this issue has been solved.

We have the latest release V3.2, in which this issue has been solved.

Still get an error once I pulled the new release:
<EMAIL_ADDRESS>Camila Altman, MS
(she/her/hers)
Research and Development Solutions Architect
Information Services
Northwestern Memorial Healthcare
312.695.4321 office
cbenaim@nm.orghttp://www.nm.org/
[NM-Logo-stacked-2090.png]
From: Ferris Tien<EMAIL_ADDRESS>Sent: Wednesday, January 13, 2021 8:56 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Altman, Camila<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
CAUTION: External email, please be mindful before clicking links, opening attachments, or replying.
We have the latest release V3.2https://secure-web.cisco.com/1gEIfwbxGfTVSeF-8l_lCluyWscs2_JV-v-ndVPNufGv_kwhZFgPhMGNNh-sYY37fViS0uxiGCyp5O1wu_yx6TpAp5zuDC9W-cD2MzccrxPetPBkZSKMbPspWW7woMy2tDB_5jdZE9zzQ_947pQADs5K5g-OhWIN6j6i01qcNyaRDqVuLEK7qqvnAfRQDG0Y_Q7iKBSVTdu2oRWliSZpPrp0OKZS8i1U3URp_FTD8RH3EHIh9DMDkbu7ujOps2QE0KXcZAs3cTZ4ZgarNBhcuHyt4Z0FTW4vpalES4rhpKnFTWk5teyX0T6X2vKs8QDXPcR1fjyZmlwiBAMoNnk4hjUP4gWoF_kxDHgOP5J26rDSu9wlj1aGqEAapfmHYvFzt920NsUr6WQGmlTUTh3i04LDqCQJVP44EmEmdNsno7VY/https%3A%2F%2Fgithub.com%2Fmicrosoft%2FFHIR-Converter%2Freleases%2Ftag%2Fv3.2, in which this issue has been solved.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://secure-web.cisco.com/1fG6YuN3DqW6nLU62gacGECmSD8MVrByO5nqdX7mpQndUREXoGc-FB8KRBH_PyjpYl1NSrH1UEcQncZo99A-Yc0fAUYwctjjjlwFzlVu3z3COS3iV_sEjGU4CKwFVfR9oGC4LEwiIJS7Hsqb8MIaR8tmGugndyaWkPzMjmbXIEq3wxl0JH4iriFTGf1PNj7Etq00walBKl6Q5YYIPfZtTjKH0eg6toXnEYpwn-ZorTgvf8g5Vc3_OaEErPZM4LqqT53mAt1RjGaEuTy-KXR87-tG9LMKh86-hy5n2W7dLwVYXu_XG3KLUhxT7mJOazA_bSUf958r6jubH9YN7NMy79bZDRmw9iJLV9M8U0xUW4L6rqh-7vsvoDjQa13y1dZsqO6l_esembS_OwsgyoG6o2w0ijC3Yn7UvEgYvcTtkAzY/https%3A%2F%2Fgithub.com%2Fmicrosoft%2FFHIR-Converter%2Fissues%2F159%23issuecomment-759891767, or unsubscribehttps://secure-web.cisco.com/1ZAr-Br1prQ-y4lGbuuGrkfikhwrRxRqYSZYZzUHzJTf7sGWzUGnkRY95c-LfOuV2rQPKyYX4-4wxPsJrOcUDBY8LW2J5D7h44JCa-0BXCAaZekZcumQU3OfJzSi9eql9g3v3bR3hp2vPT2zp2rBkzbA5otcfPuUiT29V-EigvbX-wXAm190KL7lhfXsq1ybdhcCbGXjrkaGICG8nM0Njca01s9bWb3YkTSlaIJhVe1RNLXV-BgHdyatJDogZErQCTQUAku3k4UMztmtfN26kwjosArJZ3fXupW05bh8URoz_KvotH1i01KgZsum4_tQEzQDNX4NTCLDNLlCAg7mi2jHy8xuSOTVOk2KySUE_s3uEbdhCNga1EJtnzKGc1zF_Rm8VPvt_PnbXuwZTt9Pcib1QsCCESfPEZJYVa7W6mQ0/https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAFQKHKSGA36DOMLX7XA27JDSZZMKLANCNFSM4VGEPTOQ.
Northwestern Medicine is anchored by Northwestern Memorial Hospital, ranked top 10 in the nation by U.S. News & World Report, 2020 - 2021.
This message and any included attachments are intended only for the addressee. The information contained in this message is confidential and may constitute proprietary or non-public information under international, federal, or state laws. Unauthorized forwarding, printing, copying, distribution, or use of such information is strictly prohibited and may be unlawful. If you are not the addressee, please promptly delete this message and notify the sender of the delivery error by e-mail.

Still get an error once I pulled the new release:
<EMAIL_ADDRESS>Camila Altman, MS
(she/her/hers)
Research and Development Solutions Architect
Information Services
Northwestern Memorial Healthcare
312.695.4321 office
cbenaim@nm.orghttp://www.nm.org/
[NM-Logo-stacked-2090.png]
From: Ferris Tien<EMAIL_ADDRESS>Sent: Wednesday, January 13, 2021 8:56 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Altman, Camila<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
CAUTION: External email, please be mindful before clicking links, opening attachments, or replying.
We have the latest release V3.2https://secure-web.cisco.com/1gEIfwbxGfTVSeF-8l_lCluyWscs2_JV-v-ndVPNufGv_kwhZFgPhMGNNh-sYY37fViS0uxiGCyp5O1wu_yx6TpAp5zuDC9W-cD2MzccrxPetPBkZSKMbPspWW7woMy2tDB_5jdZE9zzQ_947pQADs5K5g-OhWIN6j6i01qcNyaRDqVuLEK7qqvnAfRQDG0Y_Q7iKBSVTdu2oRWliSZpPrp0OKZS8i1U3URp_FTD8RH3EHIh9DMDkbu7ujOps2QE0KXcZAs3cTZ4ZgarNBhcuHyt4Z0FTW4vpalES4rhpKnFTWk5teyX0T6X2vKs8QDXPcR1fjyZmlwiBAMoNnk4hjUP4gWoF_kxDHgOP5J26rDSu9wlj1aGqEAapfmHYvFzt920NsUr6WQGmlTUTh3i04LDqCQJVP44EmEmdNsno7VY/https%3A%2F%2Fgithub.com%2Fmicrosoft%2FFHIR-Converter%2Freleases%2Ftag%2Fv3.2, in which this issue has been solved.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://secure-web.cisco.com/1fG6YuN3DqW6nLU62gacGECmSD8MVrByO5nqdX7mpQndUREXoGc-FB8KRBH_PyjpYl1NSrH1UEcQncZo99A-Yc0fAUYwctjjjlwFzlVu3z3COS3iV_sEjGU4CKwFVfR9oGC4LEwiIJS7Hsqb8MIaR8tmGugndyaWkPzMjmbXIEq3wxl0JH4iriFTGf1PNj7Etq00walBKl6Q5YYIPfZtTjKH0eg6toXnEYpwn-ZorTgvf8g5Vc3_OaEErPZM4LqqT53mAt1RjGaEuTy-KXR87-tG9LMKh86-hy5n2W7dLwVYXu_XG3KLUhxT7mJOazA_bSUf958r6jubH9YN7NMy79bZDRmw9iJLV9M8U0xUW4L6rqh-7vsvoDjQa13y1dZsqO6l_esembS_OwsgyoG6o2w0ijC3Yn7UvEgYvcTtkAzY/https%3A%2F%2Fgithub.com%2Fmicrosoft%2FFHIR-Converter%2Fissues%2F159%23issuecomment-759891767, or unsubscribehttps://secure-web.cisco.com/1ZAr-Br1prQ-y4lGbuuGrkfikhwrRxRqYSZYZzUHzJTf7sGWzUGnkRY95c-LfOuV2rQPKyYX4-4wxPsJrOcUDBY8LW2J5D7h44JCa-0BXCAaZekZcumQU3OfJzSi9eql9g3v3bR3hp2vPT2zp2rBkzbA5otcfPuUiT29V-EigvbX-wXAm190KL7lhfXsq1ybdhcCbGXjrkaGICG8nM0Njca01s9bWb3YkTSlaIJhVe1RNLXV-BgHdyatJDogZErQCTQUAku3k4UMztmtfN26kwjosArJZ3fXupW05bh8URoz_KvotH1i01KgZsum4_tQEzQDNX4NTCLDNLlCAg7mi2jHy8xuSOTVOk2KySUE_s3uEbdhCNga1EJtnzKGc1zF_Rm8VPvt_PnbXuwZTt9Pcib1QsCCESfPEZJYVa7W6mQ0/https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAFQKHKSGA36DOMLX7XA27JDSZZMKLANCNFSM4VGEPTOQ.
Northwestern Medicine is anchored by Northwestern Memorial Hospital, ranked top 10 in the nation by U.S. News & World Report, 2020 - 2021.
This message and any included attachments are intended only for the addressee. The information contained in this message is confidential and may constitute proprietary or non-public information under international, federal, or state laws. Unauthorized forwarding, printing, copying, distribution, or use of such information is strictly prohibited and may be unlawful. If you are not the addressee, please promptly delete this message and notify the sender of the delivery error by e-mail.

Our engine(the FHIR-Converter project) and the VS Code extension are not the same project and will not be released simultaneously.
The engine has been updated and you can use it in command line, while the extension still need a set of tests and will be updated later on. I'll let you know when the VS Code extension ready.
Thanks,
Ferris
From: Altman, Camila<EMAIL_ADDRESS>Sent: Thursday, January 14, 2021 10:45 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Ferris Tien<EMAIL_ADDRESS>Subject: [EXTERNAL] RE: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
Still get an error once I pulled the new release:
<EMAIL_ADDRESS>Camila Altman, MS
(she/her/hers)
Research and Development Solutions Architect
Information Services
Northwestern Memorial Healthcare
312.695.4321 office
cbenaim@nm.orghttps://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.nm.org%2F&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328453561|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=DoPUFkqPrAa7eLQwqL%2B%2Bzh5tbEWd0tnNKyoRRq0rQfs%3D&reserved=0
[NM-Logo-stacked-2090.png]
From: Ferris Tien<EMAIL_ADDRESS>Sent: Wednesday, January 13, 2021 8:56 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Altman, Camila<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
CAUTION: External email, please be mindful before clicking links, opening attachments, or replying.
We have the latest release V3.2https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1gEIfwbxGfTVSeF-8l_lCluyWscs2_JV-v-ndVPNufGv_kwhZFgPhMGNNh-sYY37fViS0uxiGCyp5O1wu_yx6TpAp5zuDC9W-cD2MzccrxPetPBkZSKMbPspWW7woMy2tDB_5jdZE9zzQ_947pQADs5K5g-OhWIN6j6i01qcNyaRDqVuLEK7qqvnAfRQDG0Y_Q7iKBSVTdu2oRWliSZpPrp0OKZS8i1U3URp_FTD8RH3EHIh9DMDkbu7ujOps2QE0KXcZAs3cTZ4ZgarNBhcuHyt4Z0FTW4vpalES4rhpKnFTWk5teyX0T6X2vKs8QDXPcR1fjyZmlwiBAMoNnk4hjUP4gWoF_kxDHgOP5J26rDSu9wlj1aGqEAapfmHYvFzt920NsUr6WQGmlTUTh3i04LDqCQJVP44EmEmdNsno7VY%2Fhttps%253A%252F%252Fgithub.com%252Fmicrosoft%252FFHIR-Converter%252Freleases%252Ftag%252Fv3.2&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=w8Wj1jOFBZuDNqGnG3ueEKfc1O6lv56PDTLVjzrxlTI%3D&reserved=0, in which this issue has been solved.

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1fG6YuN3DqW6nLU62gacGECmSD8MVrByO5nqdX7mpQndUREXoGc-FB8KRBH_PyjpYl1NSrH1UEcQncZo99A-Yc0fAUYwctjjjlwFzlVu3z3COS3iV_sEjGU4CKwFVfR9oGC4LEwiIJS7Hsqb8MIaR8tmGugndyaWkPzMjmbXIEq3wxl0JH4iriFTGf1PNj7Etq00walBKl6Q5YYIPfZtTjKH0eg6toXnEYpwn-ZorTgvf8g5Vc3_OaEErPZM4LqqT53mAt1RjGaEuTy-KXR87-tG9LMKh86-hy5n2W7dLwVYXu_XG3KLUhxT7mJOazA_bSUf958r6jubH9YN7NMy79bZDRmw9iJLV9M8U0xUW4L6rqh-7vsvoDjQa13y1dZsqO6l_esembS_OwsgyoG6o2w0ijC3Yn7UvEgYvcTtkAzY%2Fhttps%253A%252F%252Fgithub.com%252Fmicrosoft%252FFHIR-Converter%252Fissues%252F159%2523issuecomment-759891767&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=FrAL4g6HJX%2FdHSDyXdViHmVXVIDMCDsxcMU7XXbHtcE%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1ZAr-Br1prQ-y4lGbuuGrkfikhwrRxRqYSZYZzUHzJTf7sGWzUGnkRY95c-LfOuV2rQPKyYX4-4wxPsJrOcUDBY8LW2J5D7h44JCa-0BXCAaZekZcumQU3OfJzSi9eql9g3v3bR3hp2vPT2zp2rBkzbA5otcfPuUiT29V-EigvbX-wXAm190KL7lhfXsq1ybdhcCbGXjrkaGICG8nM0Njca01s9bWb3YkTSlaIJhVe1RNLXV-BgHdyatJDogZErQCTQUAku3k4UMztmtfN26kwjosArJZ3fXupW05bh8URoz_KvotH1i01KgZsum4_tQEzQDNX4NTCLDNLlCAg7mi2jHy8xuSOTVOk2KySUE_s3uEbdhCNga1EJtnzKGc1zF_Rm8VPvt_PnbXuwZTt9Pcib1QsCCESfPEZJYVa7W6mQ0%2Fhttps%253A%252F%252Fgithub.com%252Fnotifications%252Funsubscribe-auth%252FAFQKHKSGA36DOMLX7XA27JDSZZMKLANCNFSM4VGEPTOQ&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=u%2BlusNQ9cAi1SdeEVA7%2FaSPTg1V77i%2F6rxZVkbHY6Wc%3D&reserved=0.
Northwestern Medicine is anchored by Northwestern Memorial Hospital, ranked top 10 in the nation by U.S. News & World Report, 2020 - 2021.
This message and any included attachments are intended only for the addressee. The information contained in this message is confidential and may constitute proprietary or non-public information under international, federal, or state laws. Unauthorized forwarding, printing, copying, distribution, or use of such information is strictly prohibited and may be unlawful. If you are not the addressee, please promptly delete this message and notify the sender of the delivery error by e-mail.

Our engine(the FHIR-Converter project) and the VS Code extension are not the same project and will not be released simultaneously.
The engine has been updated and you can use it in command line, while the extension still need a set of tests and will be updated later on. I'll let you know when the VS Code extension ready.
Thanks,
Ferris
From: Altman, Camila<EMAIL_ADDRESS>Sent: Thursday, January 14, 2021 10:45 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Ferris Tien<EMAIL_ADDRESS>Subject: [EXTERNAL] RE: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
Still get an error once I pulled the new release:
<EMAIL_ADDRESS>Camila Altman, MS
(she/her/hers)
Research and Development Solutions Architect
Information Services
Northwestern Memorial Healthcare
312.695.4321 office
cbenaim@nm.orghttps://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.nm.org%2F&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328453561|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=DoPUFkqPrAa7eLQwqL%2B%2Bzh5tbEWd0tnNKyoRRq0rQfs%3D&reserved=0
[NM-Logo-stacked-2090.png]
From: Ferris Tien<EMAIL_ADDRESS>Sent: Wednesday, January 13, 2021 8:56 PM
To: microsoft/FHIR-Converter<EMAIL_ADDRESS>Cc: Altman, Camila<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [microsoft/FHIR-Converter] PR1 to procedures only happening in first PR1 (#159)
CAUTION: External email, please be mindful before clicking links, opening attachments, or replying.
We have the latest release V3.2https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1gEIfwbxGfTVSeF-8l_lCluyWscs2_JV-v-ndVPNufGv_kwhZFgPhMGNNh-sYY37fViS0uxiGCyp5O1wu_yx6TpAp5zuDC9W-cD2MzccrxPetPBkZSKMbPspWW7woMy2tDB_5jdZE9zzQ_947pQADs5K5g-OhWIN6j6i01qcNyaRDqVuLEK7qqvnAfRQDG0Y_Q7iKBSVTdu2oRWliSZpPrp0OKZS8i1U3URp_FTD8RH3EHIh9DMDkbu7ujOps2QE0KXcZAs3cTZ4ZgarNBhcuHyt4Z0FTW4vpalES4rhpKnFTWk5teyX0T6X2vKs8QDXPcR1fjyZmlwiBAMoNnk4hjUP4gWoF_kxDHgOP5J26rDSu9wlj1aGqEAapfmHYvFzt920NsUr6WQGmlTUTh3i04LDqCQJVP44EmEmdNsno7VY%2Fhttps%253A%252F%252Fgithub.com%252Fmicrosoft%252FFHIR-Converter%252Freleases%252Ftag%252Fv3.2&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=w8Wj1jOFBZuDNqGnG3ueEKfc1O6lv56PDTLVjzrxlTI%3D&reserved=0, in which this issue has been solved.

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1fG6YuN3DqW6nLU62gacGECmSD8MVrByO5nqdX7mpQndUREXoGc-FB8KRBH_PyjpYl1NSrH1UEcQncZo99A-Yc0fAUYwctjjjlwFzlVu3z3COS3iV_sEjGU4CKwFVfR9oGC4LEwiIJS7Hsqb8MIaR8tmGugndyaWkPzMjmbXIEq3wxl0JH4iriFTGf1PNj7Etq00walBKl6Q5YYIPfZtTjKH0eg6toXnEYpwn-ZorTgvf8g5Vc3_OaEErPZM4LqqT53mAt1RjGaEuTy-KXR87-tG9LMKh86-hy5n2W7dLwVYXu_XG3KLUhxT7mJOazA_bSUf958r6jubH9YN7NMy79bZDRmw9iJLV9M8U0xUW4L6rqh-7vsvoDjQa13y1dZsqO6l_esembS_OwsgyoG6o2w0ijC3Yn7UvEgYvcTtkAzY%2Fhttps%253A%252F%252Fgithub.com%252Fmicrosoft%252FFHIR-Converter%252Fissues%252F159%2523issuecomment-759891767&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=FrAL4g6HJX%2FdHSDyXdViHmVXVIDMCDsxcMU7XXbHtcE%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsecure-web.cisco.com%2F1ZAr-Br1prQ-y4lGbuuGrkfikhwrRxRqYSZYZzUHzJTf7sGWzUGnkRY95c-LfOuV2rQPKyYX4-4wxPsJrOcUDBY8LW2J5D7h44JCa-0BXCAaZekZcumQU3OfJzSi9eql9g3v3bR3hp2vPT2zp2rBkzbA5otcfPuUiT29V-EigvbX-wXAm190KL7lhfXsq1ybdhcCbGXjrkaGICG8nM0Njca01s9bWb3YkTSlaIJhVe1RNLXV-BgHdyatJDogZErQCTQUAku3k4UMztmtfN26kwjosArJZ3fXupW05bh8URoz_KvotH1i01KgZsum4_tQEzQDNX4NTCLDNLlCAg7mi2jHy8xuSOTVOk2KySUE_s3uEbdhCNga1EJtnzKGc1zF_Rm8VPvt_PnbXuwZTt9Pcib1QsCCESfPEZJYVa7W6mQ0%2Fhttps%253A%252F%252Fgithub.com%252Fnotifications%252Funsubscribe-auth%252FAFQKHKSGA36DOMLX7XA27JDSZZMKLANCNFSM4VGEPTOQ&data=04|01|Ferris.Tian%40microsoft.com|2ffff1c0fac04a8f656708d8b89b09a2|72f988bf86f141af91ab2d7cd011db47|1|0|637462323328463518|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=u%2BlusNQ9cAi1SdeEVA7%2FaSPTg1V77i%2F6rxZVkbHY6Wc%3D&reserved=0.
Northwestern Medicine is anchored by Northwestern Memorial Hospital, ranked top 10 in the nation by U.S. News & World Report, 2020 - 2021.
This message and any included attachments are intended only for the addressee. The information contained in this message is confidential and may constitute proprietary or non-public information under international, federal, or state laws. Unauthorized forwarding, printing, copying, distribution, or use of such information is strictly prohibited and may be unlawful. If you are not the addressee, please promptly delete this message and notify the sender of the delivery error by e-mail.

Our engine(the FHIR-Converter project) and the VS Code extension are not the same project and will not be released simultaneously.
The engine has been updated and you can use it in command line, while the extension still need a set of tests and will be updated later on. I’ll let you know when the VS Code extension ready.

Our engine(the FHIR-Converter project) and the VS Code extension are not the same project and will not be released simultaneously.
The engine has been updated and you can use it in command line, while the extension still need a set of tests and will be updated later on. I’ll let you know when the VS Code extension ready.


add NoFieldErrorReport

❯ julia-dev ../jet grad_thesis.jl
═════ 1 possible error found ═════
┌ @ grad_thesis.jl:24 bar(foo)
│┌ @ grad_thesis.jl:20 Base.getproperty(foo, :bar)
││┌ @ Base.jl:33 Base.getfield(x, f)
│││ type F2 has no field bar: Base.getfield(x::F2, f::Symbol)
││└──────────────

Codecov Report

Merging #53 into master will increase coverage by 0.24%.
The diff coverage is 93.33%.

@@            Coverage Diff             @@
##           master      #53      +/-   ##
==========================================
+ Coverage   86.67%   86.92%   +0.24%
==========================================
  Files           9        9
  Lines         743      757      +14
==========================================
+ Hits          644      658      +14
  Misses         99       99

Flag
Coverage Δ

#unittests
86.92% <93.33%> (+0.24%)
:arrow_up:

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

Impacted Files
Coverage Δ

src/abstractinterpretation.jl
95.90% <ø> (ø)

src/virtualprocess.jl
94.44% <ø> (ø)

src/tfuncs.jl
89.65% <92.85%> (+2.98%)
:arrow_up:

src/reports.jl
92.85% <100.00%> (+0.03%)
:arrow_up:

src/print.jl
83.15% <0.00%> (+0.86%)
:arrow_up:

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 ebcf199...7574e26. Read the comment docs.


Turn server fixes (malformed uris and FF NS_ERROR_UNEXPECTED)

These commits contain 2 changes (fixes) regarding UA construction with turn servers.
For details have a look at the commit messages for each. If you want me to squash let me know.
(And of course if I made a mistake or you want me to change something or if I should provide more information).
Cheers

@wakamoleguy Happy new year! Any updates on this PR from your site? Should I close it?

I was hoping to look into the breaking changes between master and release before pulling this if possible, but it is clear I am not going to get around to it just yet.  No point in holding this request up any further.
Happy New Year, and thank you for the contribution!


Open floor map by session detail ▲

Idea Description
Now It makes the app crash.
Reference images and links

I'd like to try this issue. 🙋🏼

Thanks!

@att55 Are you OK?

@att55 This issue needs to be made by 9/23, can you take the time?

@att55 Since I can't seem to reach you, please let me remove your assignment once.

I'd like to try this issue if you don't mind.

@takathemax Thanks a lot! We need this feature 🙏

@takahirom I'm really sorry for my late reply. 🙇🏼 🙇🏼
And thank you for your reassigning. 🙇🏼


Fail to compile

Hello !
I want to try bgfx for academic purpose, because the examples looks very cool :) (plus it was recommended by code517)
My goal is to make it work with visual studio, but it looks like I'm a noob with it ^^
Let me explain what I have done:

I'm using an express version of vs2008 (because I assumed it's what you wanted to use?).PB: There is no devenv.exe with the express version. After some research, people are saying that this executable is called "VCExpress" on the free version . So I modified the makefile, and replaced all occurence of "devenv" by "VCExpress".

I launched VS2008 command prompt, and navigated to the bgfx folder.

I wrote make vs2008-release64, and it tells me :
"VSExpress .build/projects/vs2009/bgfx.sln /Build "Debug|Win32"
make: *** [vs2008-debug32] Error 1.

And I'm stuck here :(
Soooo...
What am I doing wrong ?
Thanks in advance if you can answer me :)

Just open .build/projects/vs2008/bgfx.sln solution in VS or via command line:
> cd bgfx
> start .build/projects/vs2008/bgfx.sln

Hello again !
I just wanted to let you know that I succeed at building everything
Pro tip: do exactly like it's written in the readme, and things works just fine :p
Just in case anyone need some info, I used this tool https://windows.github.com/ to clone the repo.
It comes with shell, that I also used to make the visual studio solution.
Thanks :)


client ui: Add top bar when custom chrome is disabled

Adds a topbar with the titletoolbar buttons as opposed to just not displaying it. This will also remove the need to add the buttons to the info panel.

Fixes #912
Fixes #956

You should now also make ClientTitleToolbar package local instead of public

Why not add those 3 icons to the side bar? I'm not a fan of giving up more vertical space for 3 buttons.

we want to have ability to hide the sidebar completely too at some point. but i guess we can also not have title toolbar when custom chrome is disabled, and just add the hide sidebar button directly to applet (what works, even with high order components what I discovered with experiments before).

Please make this optional!
I much prefer having no borders or titlebars or sidebars on my screen, having those buttons tucked away in the info panel is great.

Making this optional solves literally nothing, it's either add it or not.

Then I say don't add it. ¯(ツ)/¯

Closing as #1146 is a better implementation.


fixes #81

Merged as f1957c2 (without the crucial nil vs. [] fix).  Would you mind checking chef-provisiong#286 and see if it also fixes the issue on your end?  thanks :)


Special Characters in template result in an error

When using any special characters in the 0.8.0 beta
I get the following Error:
Error loading component [TypeError: invalid utf-8 sequence of 1 bytes from index 3143] {
  code: "ERR_MODULE_NOT_FOUND"
}

could you please provide an example

@Niki2k1 could you please provide an example?

@Flowko I created a reproduction repository: https://github.com/Niki2k1/deno-vue-email-reproduction


fix: deploy l1 contracts script

can't figure out why (tried a lot) but forge create doesn't work, the process() function reverts every time.
Using CLI command which seemed to work locally
Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

[ ] If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
[ ] I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
[ ] Every change is related to the PR description.
[ ] I have linked this pull request to relevant issues (if any exist).

Benchmark results
No metrics with a significant change found.

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit 912df7ee and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,444
179,588
716,132

l1_rollup_calldata_gas
222,960
868,196
3,449,576

l1_rollup_execution_gas
842,047
3,595,304
22,205,238

l2_block_processing_time_in_ms
1,335 (-1%)
5,297 (+4%)
21,202

note_successful_decrypting_time_in_ms
348 (+2%)
1,080 (+3%)
3,899 (+1%)

note_trial_decrypting_time_in_ms
58.8 (+15%)
37.4 (+3%)
139 (-3%)

l2_block_building_time_in_ms
13,604 (+1%)
54,029 (+1%)
217,538

l2_block_rollup_simulation_time_in_ms
10,058 (+1%)
39,979
161,173

l2_block_public_tx_process_time_in_ms
3,516
13,981 (+1%)
56,096 (+1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
15,591 (-1%)
29,627

note_history_successful_decrypting_time_in_ms
2,525 (-8%)
5,197 (+2%)

note_history_trial_decrypting_time_in_ms
77.9 (-52%)
145 (-1%)

node_database_size_in_bytes
3,915,678
4,268,637 (+1%)

pxe_database_size_in_bytes
29,940
59,499

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
200 (+1%)
43,109
20,441

private-kernel-ordering
115 (+1%)
25,833
9,689

base-rollup
2,058
244,144
881

root-rollup
88.3 (+4%)
4,088
889

private-kernel-inner
261
64,516
20,441

public-kernel-private-input
172 (+1%)
25,203
20,441

public-kernel-non-first-iteration
171 (+1%)
25,245
20,441

merge-rollup
11.2
2,608
881

Miscellaneous
Transaction sizes based on how many contracts are deployed in the tx.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
10,323
26,359


ambiguos short SHA1 on git blame

I'm working on a large project that has about 105 thousands commits and after using git blame, several times I try to see what a commit changed, so I try to use git show and it fails silently. I even don't get error messages on the console.
I notice, however, that the string length of 'git blame' is slightly less than what git actually returns to me on the CLI and if I use git show from the terminal, I get an error message like this:
$ git show a4efbaf
error: short SHA1 a4efbaf is ambiguous.
error: short SHA1 a4efbaf is ambiguous.
fatal: ambiguous argument 'a4efbaf': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

Shouldn't SublimeGit use a larger portion of the SHA1 hash or allow me to override the default size?

Thought this was interesting a while back: http://blog.cuviper.com/2013/11/10/how-short-can-git-abbreviate/
Summary: set core.abbrev to at least 12 if you're working on the Linux kernel.


Clear timer on unmount

If you delete an element before the "hold" event, you can get the error Uncaught TypeError: Cannot read properties of undefined (reading 'callbacks')

Looks good thanks!

Published<EMAIL_ADDRESS>Pls check and see if it works.


[Key Management] Associated changes to move modules

This issue outlines changes to move modules that are necessary for proper key management as described in this github issue.
Background
Currently each validator has:

a top level authentication_key managed by libra_account module and
ValidatorConfig::Config resource that includes the consensus_pubkey.

This issue introduces an intermediate key that will be stored as authentication_key under the delegated account, this key will be capable of rotating the ValidatorConfig::Config (including the consensus pubkey and network information).
This key will serve two purposes:

for validator who are capable of deploying cold-warm-hot key hierarchy, this key will be warm key (cold = air-gapped, human operated for disaster recovery; warm = stored in the HSM used regularly; hot = used very frequently, stored in RAM).
for validators who want to delegate running their nodes to third parties, the delegated account address will be a third-party's account.

Design
The ValidatorConfig::Config resource will store additional fields:
        managing_delegated: bool,
        delegated_address: address,

The ValidatorConfig module will get an additional function:
    public fun rotate_consensus_pubkey_by_delegate(validator_address: address, new_consensus_pubkey: vector<u8>, proof: vector<u8>) acquires T {
        let t_ref = borrow_global_mut<T>(validator_address);
        Transaction::assert(!t_ref.managing_delegated, 11);
        Transaction::assert(Transaction::sender() == t_ref.delegated_address, 1);
        Transaction::assert(Vector::length(&new_consensus_pubkey) == 32, 12);
        let key_ref = &mut t_ref.config.consensus_pubkey;
        *key_ref = new_consensus_pubkey;
        // TODO: check the proof
    }

Checking the proof
To check the proof we construct a byte-array:
m = sha3-256(sha3-256(b"ConsensusPubKeyRotation", LIBRA_HASH_SUFFIX) || validator_address)
And check that the proof is a valid signature on this message under the new_consensus_pubkey:
Transaction::assert(!ed25519_verify(proof, new_consensus_pubkey, m), 1)

Overall looks good. Haven't starred at the move code.
Some comments:

Interface to set / replace / disable delegation
Do we want a single interface that updates the entire ValidatorConfig or one for each individual field? e.g., one for each networking and one for consensus or just a composite that takes appropriate proof of correctness?
When generating this the first time, do we want a proof of correctness? What does the creation API look like as a result?

A few other thigns:

a scheme field for crypto agility somewhere in the ValidatorSet(Resource) -- both in move and rust @zekun000
rotation policies
cleaning up discovery* @phlip9

We should probably call this managing ValidatorConfig with a subsection on key management.

Thanks for your comments, @davidiw!

I suggest the following 4 functions (this code compiles): set delegate, remove delegate, is delegated, get delegated address:

    public fun set_delegated_address(delegated_address: address) acquires T {
        Transaction::assert(LibraAccount::exists(delegated_address), 1);
        let t_ref = borrow_global_mut<T>(Transaction::sender());
        *(&mut t_ref.managing_delegated) = true;
        *(&mut t_ref.delegated_address) = delegated_address;
    }

    public fun remove_delegated_address() acquires T {
        let t_ref = borrow_global_mut<T>(Transaction::sender());
        *(&mut t_ref.managing_delegated) = false;
        *(&mut t_ref.delegated_address) = 0x0;
    }

    public fun is_delegated_address_set(): bool acquires T {
        let t_ref = borrow_global<T>(Transaction::sender());
        t_ref.managing_delegated
    }

    public fun get_delegated_address(): address acquires T {
        let t_ref = borrow_global<T>(Transaction::sender());
        t_ref.delegated_address
    }

I would prefer separate functions for updating parts of ValidatorConfig. Because for example, networking keys might be updated at different frequencies and by some different parts of the system.

By "proof of correctness" do you mean the proof of knowledge of the corresponding secret keys? This is a very interesting topic, we need to discuss this a bit more.

For rotation policies I suggest adding a field Y: u64 in libra_system and this will be the period of time for regular reconfigurations (i.e. after every Y blocks/hours, the reconfiguration will run and the keys will get copied from validators' accounts to the Association's account). So the suggestion for validators would be to rotate consensus_pubkey locally after every Y blocks/hours. What do you think?

All seems good, I'd like to know if you think we should have is_delegated_address(address) or get_delegated_address... I think we can avoid a copy if we use is_delegated_address and we don't really need to export that data for other reasons afaik.
what resource / struct would you add the reconfiguration time to? I know that @christinacelee and @runtian-zhou are working on a on-chain config, would it belong there?

The linked pull-requests mostly resolved this issue (except for the proof of key ownership which we might substitute with the check that all keys in the validator set are distinct - TBD).
A new issue is up with remaining work items: Issue 4676


Implement access control for IM invoke (group)

CommandHandler::ProcessGroupCommandDataIB has added another place where IM is processing actions (in this case for group) and therefore checking access control.
This needs to be gone over to ensure handling is correct. (E.g. fatal errors are handled)
Also needs end to end testing.

@mkardous-silabs FYI


Fix step-slug positioning

-Text isn't properly centered in step circle
-Step circle looks like bad Easter egg

Step circle looks like bad Easter egg

lol


Aggressive inline completions when typing within line

Is this how it's supposed to work? I sometimes see inline completions show up just when moving the cursor around, and it moves the whole line around and is distracting. But it doesn't happen every time, seems to be just when I was recently editing or maybe after triggering suggestions. After a bit, it will stop happening.

Pushed a fix for not doing inline quick suggest when inside words. The other part of this issue is tracked in https://github.com/microsoft/vscode/issues/146529

fyi @bpasero


Is the 84x84 a only input resolution for agent in submission?

When I learning I can choose any resolution I want.
Can I change it for inference?
In testDocker.py I see this code:
env = AnimalAIEnv(
environment_filename='/aaio/test/env/AnimalAI',
seed=0,
retro=False,
n_arenas=1,
worker_id=1,
docker_training=True,
)
Does it mean that only possible resolution is 84x84?

You will be tested on 84x84.
https://github.com/beyretb/AnimalAI-Olympics/issues/27#issuecomment-507362296

We've added an option to change the resolution of the agent. It's still square and can vary between 8x8 and 512x512 (defaults to the Atari 84x84 as this is what you'll be tested on).

Hello,
We have now added the possibility to specify the resolution of the environment during evaluation. You can now add an attribute self.resolution to your agent in __init__. This value has to be between 4 and 256 (the training environment goes to 512 but we had to limit to 256 for evaluation due to compute constraints). See the documentation here
Remember that the bigger the observation, the longer it takes to run a single step, thus giving your agent less time for inference.

Thanks,
I got better score even on 96x96 resolution during my local validation :)

@beyretb Just for clarification, can this resolution be changed between episodes or is it only set once when the agent is first loaded?

@krisives yes only once when we load the environment

This is a HUGE change to the competition.  Networks trained at the 84x84 resolution will have to be re-trained and that factor alone is a big time sink.  This is the sort of parameter that, announced at the start of the competition as a fixed value for final submission, should not be changed half-way through.

I agree that while it's nice to have a new resolution options available having them sprung on us midway through the competition was a bit of a pain because we have lots of models already trained at 84x84.

Changing the resolution in the middle of the competition does not seem to be reasonable when so much time and effort has been put working on 84x84. It is a pain going through the process all over again.

We thought that allowing for more resolutions would only increase possibilities for people entering the competition and that 84x84 would still be a good resolution to use, therefore not changing anyone's plans. However, we overlooked that this would be unfair to anyone who had invested time in 84x84 that would now want to have explored the other options. We had not intended this change affects those that have already been engaging with the competition and are therefore going to remove this from the evaluation script. You can still use multiple resolutions for training, but evaluation will require 84x84.
The time increase will remain. This should have very minimal effect as very few entries come even close to the time limit. It also allows for a wider variety of approaches to be entered. Lastly, it potentially helps those that have access to less resources compared to the resolution change which primarily helped those with access to more resources.
Please be aware that in our rules the final evaluation (In November not for AWS) may include extra variations on the tests (resources permitting, we will run them more than once with minor variations to get a more robust score) and therefore the final score may not be identical with the score on the current leaderboard.

Now I invested time into other resolution.
What to do with leaderboard right now?
84 seems to be pretty low resolution. I was only able to play somehow starting from 128.
I lost two days of learning on new resolution.
And I see 'The resolution provided must be 84' error.
Please think about your decisions.

It is regrettable that we made this mistake, but, given that we put ourselves in that situation, it became clear that we needed to respect that there has been 1.5 months of work from multiple teams that has been performed with the understanding that the final test will be performed at 84x84 resolution. If we could add the extra functionality without undoing the 1.5 months of work then we would, and we are thinking about some alternatives, but it is unlikely to be possible for this iteration of the competition.
It goes without saying that we will be much more careful in future before adding any extra functionality (and we do not intend to make any further changes unless we need to fix bugs).


Cascade delete for deployment configs

This PR fixes situation when DC of collector contains more versions of deployments (build was updated) and orchestrator tries to delete deployment config.
For deleting of all deployment versions Foreground cascade delete has to be set:
https://kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/

cc @carbonin
@bdunne please :eyes:


Cannot find AXError type in scope

Hello 👋 ,
I was using Swindler. I have now used Xcode version 13 beta 5 and I received error in AXSwift and Swindler packages.
Cannot find AXError type in scope.
I have created Pull request for AXSwift and for Swindler where I just import Cocoa in 2 files.

Fixed in #30, thanks!


Android local eval persistent

🚀 Deployed on https://65baeedd3aab600b79b91e84--cozy-fox-0defec.netlify.app


saving image and video with specific name?

Hi,
i would like to know if it's possible to save image(.jpg) and video (.mov) to camera roll gallery with specific name ?
thank you

how to save files with specific name?

I have the same problem. I noticed that when i download an image i previously downloaded my download will simply override the file and not save a new image, probably because we can't edit the output file name.


Use of sample shadow sets reported property automatically based on desired property

Describe the bug
I'm relatively new to the Named Shadow Feature of iot-device-client. From my understanding of IoT shadows, a device typically only reports the "reported" state as stated here ref

Devices should write only to the reported property of the shadow state when communicating state data to the shadow.

Apps and other cloud services should write only to the desired property when communicating state change requests to the device through the shadow.

When using the Named Shadow feature I noticed that when I send a new "desired" state from the cloud, it also automatically updates the "reported" value to the "desired" value. This is something I did not expect as I assume that only "desired" is updated until the device has handled that request.
To Reproduce
Steps to reproduce the behavior:

My iot-device-client configuration snippet:

      "config-shadow":  {
        "enabled":      false
      },
      "sample-shadow": {
        "enabled": true,
        "shadow-name": "poc-shadow",
        "shadow-input-file": "/home/pi/input_shadow/poc-shadow-in.json",
        "shadow-output-file": "/home/pi/output_shadow/poc-shadow-out.json"
      }
    }

I placed the following sample content in my poc-shadow-in.json:

{
      "color": "red",
      "power": "on"
}

the poc-shadow-out.json is empty in this phase
I started the aws-iot-device-client which resulted in the creation of the AWS shadow at AWS IoT core:

{
  "state": {
    "desired": {
      "color": "red",
      "power": "on"
    },
    "reported": {
      "color": "red",
      "power": "on"
    }
  }
}

After I wanted to mimic a cloud MQTT shadow update request via MQTT test client:
Topic: $aws/things/mythingname/shadow/name/poc-shadow/update
payload:

{
  "state": {
    "desired": {
      "color": "green",
      "power": "on"
    }
  }
}

After executing this request, it sets the "reported" state to the value, which is something I did not expect. Looking deeper I noticed that it does 2 modifications while looking at the poc-shadow-out.json:

{
	"previous":	{
		"state":	{
			"desired":	{
				"color":	"green",
				"power":	"on"
			},
			"reported":	{
				"color":	"red",
				"power":	"on"
			}
		},
		"metadata":	{
			"desired":	{
				"color":	{
					"timestamp":<PHONE_NUMBER>
				},
				"power":	{
					"timestamp":<PHONE_NUMBER>
				}
			},
			"reported":	{
				"color":	{
					"timestamp":<PHONE_NUMBER>
				},
				"power":	{
					"timestamp":<PHONE_NUMBER>
				}
			}
		},
		"version":	34
	},
	"current":	{
		"state":	{
			"desired":	{
				"color":	"green",
				"power":	"on"
			},
			"reported":	{
				"color":	"green",
				"power":	"on"
			}
		},
		"metadata":	{
			"desired":	{
				"color":	{
					"timestamp":<PHONE_NUMBER>
				},
				"power":	{
					"timestamp":<PHONE_NUMBER>
				}
			},
			"reported":	{
				"color":	{
					"timestamp":<PHONE_NUMBER>
				},
				"power":	{
					"timestamp":<PHONE_NUMBER>
				}
			}
		},
		"version":	35
	},
	"timestamp":<PHONE_NUMBER>
}

Expected behavior
The "reported" state does not get updated unless in my example poc-shadow-in.json is changed.
Actual behavior
Both "reported" and "desired" gets updated in the shadow object without touching poc-shadow-in.json. poc-shadow-in.json still contains the initial value. Only an aws-iot-device-client restart causes it to get back to the original value, but also updates the "desired" value.
Logs
BEFORE REQUEST TO CHANGE DESIRED VALUE
2022-12-07T20:19:12.404Z [INFO]  {Main.cpp}: Sample shadow is enabled
2022-12-07T20:19:12.404Z [INFO]  {Main.cpp}: Pub Sub is disabled
2022-12-07T20:19:12.404Z [INFO]  {Main.cpp}: Sensor Publish is disabled
2022-12-07T20:19:12.404Z [INFO]  {SharedCrtResourceManager.cpp}: Starting Device Client features.
2022-12-07T20:19:12.404Z [INFO]  {Main.cpp}: Client base has been notified that Jobs has started
2022-12-07T20:19:12.404Z [INFO]  {SampleShadowFeature.cpp}: Starting SampleShadow
2022-12-07T20:19:12.404Z [INFO]  {JobsFeature.cpp}: Running Jobs!
2022-12-07T20:19:12.505Z [INFO]  {Main.cpp}: Client base has been notified that SampleShadow has started
2022-12-07T20:19:12.567Z [INFO]  {JobsFeature.cpp}: No pending jobs are scheduled, waiting for the next incoming job
2022-12-07T20:19:12.632Z [INFO]  {SampleShadowFeature.cpp}: Stored the latest poc-shadow shadow document to local successfully
AFTER REQUEST TO CHANGE "DESIRED" VALUE
....
2022-12-07T20:26:20.319Z [INFO]  {SampleShadowFeature.cpp}: Stored the latest poc-shadow shadow document to local successfully
2022-12-07T20:26:20.421Z [INFO]  {SampleShadowFeature.cpp}: Stored the latest poc-shadow shadow document to local successfully --> Here it changes the "reported" value automatically without any intermittent check on input-file.

Generally, it looks like the shadow feature is working as intended. Because the sample-shadow feature is intended to be more of a demo than a legitimate use case, we want to demonstrate the ability to receive a desired state from the cloud and instantly sync our reported state to match the desired state without waiting for some other action to be performed.
However, I have observed that upon device client startup, the shadow feature reads the JSON from the input file sets both the desired and reported states to those values. I am not sure if this specific behavior is correct, as you mentioned here:

Devices should write only to the reported property of the shadow state when communicating state data to the shadow.

Thus, the fact that we set both desired and reported states seems contradictory.
And then, because the shadow gets created such that the desired and reported states are the same, any attempt to change the reported state via a write to the input file would be immediately overwritten by the shadow sync handler which changes it back to the desired state.
In conclusion:

Yes, automatically updating the reported value is intentional.
No, we do not want device client to write to the input file in the event that it updates the reported value. The input file is more of a primitive 'UI' for users to manually update reported state.
And yes, the fact that we create a desired property upon device client startup seems to not make a lot of sense. If a shadow does not have a desired property, device client probably should not create it. Any updates to the input file --> reported state should stick until the desired state gets populated from the cloud side. The change seems to be as simple as a one line deletion. Will double check to make sure.

Thanks @RogerZhongAWS for your quick reply.

Generally, it looks like the shadow feature is working as intended. Because the sample-shadow feature is intended to be more of a demo than a legitimate use case, we want to demonstrate the ability to receive a desired state from the cloud and instantly sync our reported state to match the desired state without waiting for some other action to be performed.

No, we do not want device client to write to the input file in the event that it updates the reported value. The input file is more of a primitive 'UI' for users to manually update reported state.

Ok that is a bit unfortunate as the implementation of IoT jobs is a really nice useful feature and we hope to use Shadows in our semi-production setting as well with aws-iot-device-client.  In this case we simply cannot easily make use of this feature. We originally wished to use the input-file to update reported state without having to also restart aws-iot-device-client. In return use INotify to listen to changes from the cloud on the output-file without automatically matching desired to reported. I imagine that for this we simply need to built or own logic in our application directly and there are samples around from the AWS SDK.

And yes, the fact that we create a desired property upon device client startup seems to not make a lot of sense. If a shadow does not have a desired property, device client probably should not create it. Any updates to the input file --> reported state should stick until the desired state gets populated from the cloud side. The change seems to be as simple as a one line deletion. Will double check to make sure.

Ok, thanks.


adding param allowing to overwrite existing directories

setup: qemu vm win10 with python 3.8.10 and nuitka <IP_ADDRESS>
When building a binary with --onefile option python error

FileExistsError: [WinError 183]

came up. with every retry, other files were tried to be overwritten. Changing the second parameter of os.makedirs() fixed it (see python docs). But I don't know if the files that are overwritten now are needed elsewhere. os.path.isdir() from line before seems to "fail" in this case. maybe race conditions, when in line 166, condition of 165 is not true anymore?.

The change is Python3 only code, but what's more, it's also bug hiding. Something must be afoul there. The lock is supposed to make sure, that Nuitka cannot have races with file operations. But maybe it's a file and not a directory for some reason. Did you raise an issue with the original phenomenon?
I would much rather try to understand why Nuitka is creating a directory named like an existing file, and have it stop doing that.

This should be an issue report, rather than a PR that I cannot merge. The file locking might be missing somewhere, but I cannot tell from this "report". Please open an issue.


Suggestions for roadmap

Hi CogView team. First off, great work! This method's results are very impressive. I just wanted to post some observations that I've had that might help inform future roadmap.

Generations tend to include watermarks and other artifacts of online images. One common one I see is a white bar at the bottom with black pseudo-text (see examples below)

Add support for non-square inpainting/replacement boundaries.

Hands and arms seem to be deformed, have extra fingers, etc. Suggest adding more data with pictures of hands to help model fix those issues.

Congrats on the paper and keep up the good work!

@jdagdelen @dza6549  Thank you very much for suggestions.

I have also observed the white bars or other watermarks, we will collect more data and also clean the data in the following works!
The non-square inpainting/replacement boundaries is supported, but I don't know how to input the mask and don't have a enough time to write a UI... I will work on that afterwards.
The reasons might be more complex and I will improve the method in the following works.


getUserMedia is not supported while running on local server

While runing the app on my local server, I just tried to connect from my other local computer using the local ip address.
For example, http://<IP_ADDRESS>:3000/
Unfortunately, I just got error message.

Unhandled Rejection (Error): getUserMedia is not supported

I can see the associative article from here
But it doesn't give me the solution.
How can I deal with this issue to run the app smoothly on my local?

Hey @gurusoft13, thanks for the issue!
getUserMedia is only available in secure contexts. Accessing the app via http://localhost:3000 is considered secure because it's local.  If you want to securely access the app from another device on the network you'll need to enable https.
HTTPS=true npm start
You'll see a security warning that you'll have to bypass in order for it to work. Alternatively, you can use a tool like ngrok, which will let other users access your local server over https.

thanks, it works for me


⚠ Guya.moe Proxied has degraded performance

In 17ef576, Guya.moe Proxied (https://ice.guya.moe/) experienced degraded performance:

HTTP code: 200
Response time: 21098 ms

Resolved: Guya.moe Proxied performance has improved in 60393c6 after 1 hour, 31 minutes.


add expressions support

Summary of the new feature / enhancement
https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-expressions
Proposed technical implementation details (optional)
No response

Fixed via https://github.com/PowerShell/DSC/pull/252


SteamVR2+ Haptic Pulse is using default values instead of parameters that is being passed

for a call like the following,
VRTK_ControllerHaptics.TriggerHapticPulse(VRTK_DeviceFinder.GetControllerReferenceLeftHand(), 0.15f, .1f, .1f);
only the strength value is correctly being passed into the new SteamVR2 execute,
all the other values gets lost in between and execute end up using the default values.
Not related to IL2CPP.

Are you certain this is not a VRTK issue?

if you trace that call, at the end only the 0.15f strength value get passed through the stack.
In previous versions of VRTK (3.2) and SteamVR (1.X) it worked as intended.

I think this must be a vrtk issue. I don't see any places that defaults are defined in the steamvr plugin itself.


ModuleNotFoundError: No module named 'liualgotrader.trading.tradier' when running backtester

Hi! I think I might have found a bug (probably fell between versions)
liualgotrader.backtester  tries to  liualgotrader.trading.tradier import TradierTrader but that is currently missing from the package.
To Reproduce
Steps to reproduce the behavior:

install liualgotrader
download sample data

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

@AleFestante thank you for bringing it to my attention and my apologies for the slow response. I will handle this and keep you posted. Sorry about that.

@AleFestante I am unable to re-produce the issue. Can you please explain how you installed the platform? Did you use pip or did you clone from GitHub? BTW, to run backtester you need to create a .toml file, but firstly I'd like to reproduce the issue.

@AleFestante I am unable to re-produce the issue. Can you please explain how you installed the platform? Did you use pip or did you clone from GitHub? BTW, to run backtester you need to create a .toml file, but firstly I'd like to reproduce the issue.

Sorry about the slow response.
I used pip, but after the error I downgraded to the previous version and it ran fine.
I will try to upgrade again to the current version and see what happens.

@angrycarrots I tried both 3.9 and 3.10 (which is the version I'm using), and I can't reproduce the issue... happy if you can share additional details

Hi @amor71 thanks for this platform, I'm really keen to test it out.
I've hit the same issue as the OP. The steps I took were:
(Platform Mac 11.6.5, Python 3.9, pip3 22.1.1, using venv: no)

pip3 install liualgotrader
liu quickstart
portfolio create 10000 1000 US_EQUITIES

Running v0.4.20:

When I look at the source of the error (trader_factory.py), it doesn't have a tradier.py definition:

I've looked in the master branch at this folder, and I can't see that file either:

On a side note I've set LIU_BROKER=alpaca, which I thought would bypass the factory building a TradierTrader, but I haven't looked into that much:
trader_factory.py

quick update - I removed the from liualgotrader.trading.tradier import TradierTrader line from trader_factory.py and it worked for me

@adenhertog @angrycarrots @AleFestante I managed to reproduce and found the issue. I will be releasing a fixed version together with several upgrades in a couple of days. I appreciate your patience.

resolved. thanks.


Add feature: Jigsaw Generators

@damiani and I are building a tool called Jigsaw Generators. I can't say for sure what the syntax will look like, but here's the current plan:
Jigsaw will come with a few "generators" out of the box, which will be like skeleton templates that you can generate your new sites with. Imagine a blog skeleton and an open source documentation skeleton.
We hope to also make it easy for other people to make their own generators and put them up on GitHub, and then make Jigsaw able to generate using those as well.
The templates we offer out of the box will be robust and well-designed, using Tailwind. I built really ugly versions of each and then handed it off to our designer Steve, and now some of our team members are updating the skeletons with the designs Steve made. Once we're done with those, @damiani will finish the work of adding the generators functionality to Jigsaw, and then we'll release it.
Here are screenshots of the ugly, before-design versions of the two templates I built:

/cc #229

I'm definitely going to contribute a blog skeleton/starter. Can't wait!


Close[ENG-792] feat: Add Close CRM connector

Catalog variables
No catalog variables
Notes
Testing
GET
localhost:4444/api/v1/contact/

POST
localhost:4444/api/v1/contact/

PUT
localhost:4444/api/v1/contact/cont_4fWk9sSGSSUBbKKT42bdmoskEXZiV1N5ojp5vbHqlKr - failed with error 403

while the direct request to https://api.close.com/api/v1/contact/cont_Zgz6xgtpLEELtYdABl4rHO3RvJjW4hmEWiKVPcY4ujr
worked just fine

###DEL
localhost:4444/api/v1/contact/cont_4fWk9sSGSSUBbKKT42bdmoskEXZiV1N5ojp5vbHqlKr

Pagination
localhost:4444/api/v1/contact?_skip=0&_limit=2

Will reopen the new one under the correct branch


TrailsResult's data frame will fail for more than 64 qubits due to integer conversion.

(Still exposed as a list by legacy methods though)

I'm not sure flattening to int is the right call for all users though it appears that this was done.
At the very least this needs to document the endian-ness of this conversion, which is not done in TrialResult.
Also this will fail at 64 qubits because pandas data type is int64 in our current code.

Oh this does work, my bad.  Closing this issue.
We do need to document this in sampler.


Cast noise_covar value to a CovarianceMatrix when initialising a MeasurementModel

Cast the noise_covar value to a CovarianceMatrix when initialising a MeasurementModel in LinearGaussian & NonLinearGaussianMeasurement
Fixed the changes to RangeRangeRateBinning testing

Fixes issue #754


Update versions, added documentation related to default export

@sergmarch , first of all, sorry for the delay, but I had important reasons :) my son was born :)
Second of all, thank you very much for Your help!

@ivanzusko The reasons was really important :) Congratulations 🎉. You welcome!

@sergmarch thanx!)