New api

Fixes DD-1341 and DD-1343
Description of changes
Implemented the new API endpoints according to the spec.
IMPORTANT: the database structure is now quite different, so if there is already data in the existing database we need to do some migrations @janvanmansum.
Also refactored the code a bit:

removed unneeded interfaces
deleted the duplicated models (DD-1343), all of them now end in Entity and have 1 Repository.
moved all logic to Usecases class instead of inside services and resources
renamed output packages for generated code to match dropwizard conventions
removed duplicate html view
added proper integration tests with inmemory database for some of the usecases

I suspect there is some merge which added some refactoring added to the the old code and this went unnoticed.
How to test
Related PRs
(Add links)

Notify
@DANS-KNAW/dataversedans

Codecov Report
Patch coverage: 65.60% and project coverage change: +21.52 :tada:

Comparison is base (0ba21ae) 46.28% compared to head (361d564) 67.80%.

Additional details and impacted files
@@              Coverage Diff              @@
##             master      #10       +/-   ##
=============================================
+ Coverage     46.28%   67.80%   +21.52%
- Complexity       99      142       +43
=============================================
  Files            32       31        -1
  Lines           484      469       -15
  Branches         12       23       +11
=============================================
+ Hits            224      318       +94
+ Misses          255      145      -110
- Partials          5        6        +1

Impacted Files
Coverage Δ

.../java/nl/knaw/dans/catalog/cli/ReindexCommand.java
21.05% <0.00%> (+21.05%)
:arrow_up:

...eption/OcflObjectVersionAlreadyInTarException.java
0.00% <0.00%> (ø)

...alog/core/exception/TarAlreadyExistsException.java
0.00% <0.00%> (ø)

...s/catalog/core/exception/TarNotFoundException.java
0.00% <0.00%> (ø)

.../dans/catalog/resource/api/DefaultApiResource.java
0.00% <0.00%> (ø)

.../dans/catalog/resource/view/ArchiveDetailView.java
100.00% <ø> (ø)

...a/nl/knaw/dans/catalog/client/SolrServiceImpl.java
15.90% <15.90%> (ø)

...in/java/nl/knaw/dans/catalog/db/TarPartEntity.java
53.33% <53.33%> (ø)

.../catalog/db/OcflObjectVersionEntityRepository.java
55.17% <55.17%> (ø)

...knaw/dans/catalog/resource/api/TarAPIResource.java
63.63% <57.14%> (-1.48%)
:arrow_down:

... and 19 more

... and 2 files with indirect coverage changes

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


[Feature] Binder Notebooks

Wanting to get feedback and begin adding a jupyterhub binder for the xnd project. From reading the documentation xnd seems to quite fully featured and it would be nice to allow users to quickly experiment with the python interface. I think on the biggest barriers that users at the pycon sprint has was getting started with the library.
If you believe this is worth creating I will setup a binder notebook for xnd.

You mean for https://mybinder.org/ ?

Yes. I liked to the documentation but I believe that the project is run under jupyterhub. It would allow uses to quickly experiment with features and get used to the interface.
Here is an example of a conda demo. https://github.com/binder-examples/conda
Not sure of the folder structure you would like but I imagine a structure like.
notebooks/
      gettingstarted.ipynb
      types.ipynb
      alignment.ipynb

doc/
      notebooks/
           gettingstarted.ipynb
           types.ipynb
           alignment.ipynb

Before you put a lot of work into this:  I'm not quite sure yet if I want that feature in. It means an additional item to maintain.
I think users can copy and paste the doc examples from readthedocs.org. I've deliberately added the prompt-toggling feature to copy/paste easier.

I agree that it is another thing to maintain and I have found it tedious in some of my projects to maintain.
To help myself and others with learning I have created a collection of binder notebooks. I do believe that there should be some option for people to jump into the project and explore its features quickly.


create a log driver system, add loki driver, add prometheus metrics, update docs

Apologies in advance for the mega-PR!
Do not feel obligated to merge this by any means if it is too gross/much (perhaps it would be better as a separate fork? I definitely don't want to push the burden of maintaining this onto you - let me know either way!)
In this PR, I've attempted to:

shift things to a generic LogDriver system, which we can use to send Vercel logs to one or more outputs
added a working implementation of the LokiDriver (tested with my own loki deployment, and with local methods)
shifted CloudWatch to its own driver (though I have not extensively tested this since I don't have an active CloudWatch project to test with - though it may be interesting to make testing this easier!)
added a local nix development environment shell and some helpers to make testing easier
add an option for exposing a prometheus /metrics endpoint to track a bunch of http and performance metrics
updated the docs to better show available options, env vars, and defaults

Open to any and all feedback/suggestions - I am relatively new to Rust, compared to the other languages/ecosystems I normally live in!

@jpetrucciani I would not call myself a rust expert either, but I like these improvements, I've been thinking of ways to improve testability and I think this is a set in the right direction.
If you want to manage your own fork feel free to, but I will happily accept the changes, and any future changes.
I think this is really good for any future users as there is now a clear path for how to add your own driver for any other future users.

I will try to test some things out push any needed changes and then create a new release if everything checks out.

So long as you're cool with me sending more PRs! 😄
Definitely let me know if things still work as expected with CloudWatch - I have a couple other drivers that I might want to add!

For sure, keep them coming.
If you want to open an issue for each of the drivers you are thinking about
I can add one or two as well.
On Sun, Aug 4, 2024, 23:43 jacobi petrucciani @.***>
wrote:

So long as you're cool with me sending more PRs! 😄
Definitely let me know if things still work as expected with CloudWatch -
I have a couple other drivers that I might want to add!
—
Reply to this email directly, view it on GitHub
https://github.com/dacbd/vercel-log-drain/pull/5#issuecomment-2267567544,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIN7MYO4DJ6RD4LG32AZM3ZPY4XNAVCNFSM6AAAAABL6DAUUOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRXGU3DONJUGQ
.
You are receiving this because you modified the open/close state.Message
ID: @.***>

@dacbd sorry to comment on a previous PR - but did you have a chance to test out any of the changes for cloudwatch? it would be awesome to get a 0.0.3 release created for a docker image build!


puzzles, KfXmlFlexible, KfFlexibleEnvelope

closes #154
@h1alexbel take a look, please

Codecov Report
Patch coverage: 93.75% and project coverage change: +1.37 :tada:

Comparison is base (8e72207) 82.42% compared to head (33c0d7e) 83.79%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff              @@
##             master     #160      +/-   ##
============================================
+ Coverage     82.42%   83.79%   +1.37%
- Complexity       59       66       +7
============================================
  Files            24       25       +1
  Lines           165      179      +14
============================================
+ Hits            136      150      +14
  Misses           29       29

Impacted Files
Coverage Δ

...rs/kafka/consumer/settings/KfConsumerSettings.java
88.88% <ø> (ø)

.../io/github/eocqrs/kafka/parameters/KfFlexible.java
85.71% <ø> (ø)

...rs/kafka/producer/settings/KfProducerSettings.java
100.00% <ø> (ø)

.../producer/settings/KfProducerSettingsEnvelope.java
100.00% <ø> (ø)

...ub/eocqrs/kafka/parameters/KfFlexibleEnvelope.java
70.00% <50.00%> (ø)

.../github/eocqrs/kafka/parameters/KfXmlFlexible.java
100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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

@h1alexbel this one is ready for reviewing

@h1alexbel can we merge or do we need to add/fix something?

@rultor merge

@l3r8yJ thanks!


How to remove selected ids after process

Thank you for this greate plugin.
I just want to ask a question: how do i remove the selected ids from APEX-ITEM, like your example Apex Mailbox.
1- In the received email report (Apex Mailbox), I select for example 3 rows, APEX-ITEM shows id of 3 rows - e.g: 28:268:20
2- Then I delete 3 selected rows.
3- I noticed the report is refreshed (not sure how specifically)
4- Then, if I select other rows, APEX-ITEM does not show 28:268:20 anymore.
In my application, at step 4, APEX-ITEM still re-recognizes 28:268:20 even though 3 rows have been deleted and are no longer in the report.

Pretius Smart Checkbox Column plugin is always initiated on a DOM element with a static id being a combination of yourReportStaticId_columnStaticId_pscc. In the example from application demo it’s RECEIVED_ID_pscc for the Received tab. Knowing that you can call clearSelection method on your instance of plugin by adding an Execute Javascript Code Dynamic Action with a following line:
$('#RECEIVED_ID_pscc').smartCheckboxColumn('clearSelection');
Of course changing the selector accordingly to your report and column id. That should make the plugin to clear selected rows and the page item (or) collection that is used for storing values.
Alternative:
In general, when the page is loaded plugin reads the selected records from an item or collection and visually applies it to the state of the report rows. It has no ways of modifying item’s or collection’s values apart from the moment when you select / unselect the report rows or use the clearSelection method. This means that clearing selected rows can be also done by manually clearing the item or/and collection. If after a page refresh item/collection is empty then no rows are selected. But it often may happen that some other page elements are modifying the page item on a page load, so your trials to reset the report were unsuccessful.
Make sure that:
If you’re using the item

it has no default value or source that would cause to be not null on a page load
there’s no before-rendering process that would change item’s value
there’s no DA triggered on page load that would modify item’s value
item’s value is not set during redirection to a page with your report from somewhere else
when the item was populated during redirection, the url contains the values. If you refresh the page in your browser, the values from url will be applied again even if you cleared the item before refreshing

If you’re using the collection

there’s no before-rendering process that would change item’s value

If you’re using both collection and an item - collection values are always superior to the item. Meaning that if you manually change state of collection then after page refresh plugin will select the rows that are stored in a collection and item’s value will be adjusted. If you manually change the item, but leave the collection untouched then nothing will change after a reload, because the collection hasn’t changed.


chore(deps): patch release via chore

GH-42
Description
When dependencies are updated using chore as the type a patch version will be released
Fixes #42
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Intermediate change (work in progress)

Checklist:

[x] Performed a self-review of my own code
[x] npm test passes on your machine
[ ] New tests added or existing tests modified to cover all changes
[ ] Code conforms with the style guide
[ ] API Documentation in code was updated
[ ] Any dependent changes have been merged and published in downstream modules

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Validation: fix missing descriptions #2

Global effort to fix validation errors
The Content & Learning team is fixing build validation errors on docs.microsoft.com. This effort will eliminate potential accessibility, security, and usability issues. This PR includes only build validation fixes and does not change other content. I’d very much appreciate your timely review and feedback on these changes I’ve suggested. Thanks!

Hi @adegeo, this PR is ready for review.


pass token in query params

Browser tests fail.  I suspect something is wrong with setup or something but I can't figure it out. It does work in browser though with a few simple debug tests.

Before merging and bumping the version could you fix misspelling of could on https://github.com/Esri/geotrigger-js/blob/master/geotrigger.js#L251 and https://github.com/Esri/geotrigger-js/blob/master/geotrigger.js#L285?

@patrickarlt I merged @kneemer's PR, this one's probably good to go.

@patrickarlt would be good to set up .travis.yml on this, did we ever try that?

@kneemer set up to travis to skip running tests on forked PRs (because encrypted variables aren't supported).
will revert if need be :see_no_evil:


Bridge and sensors stop updating after +/- 5 minutes until flows are restarted

Describe the bug
My setup suddenly stopped working after several months, with no change in hardware. When I create a flow that includes motion sensors, everything works fine after deployment. However, after a short amount of time (~5 minutes), statuses are not getting updated anymore (i.e. they remain "frozen" in their current status). When I deploy a (minor) change or restart all flows, everything works again for only a short amount of time. I get no errors and all statuses remain "active" or "connected", but it just doesn't respond to changes anymore.
Some sensors, which are also added in the Flow, control lights via the normal Hue app. Those sensors work (i.e. they turn on the light), but their status is not updated in node-red. Furthmore, those sensors are also entities in Home Assistant (which is directly connected to the Hue Bridge) and I can see them being updated. It thus seems that the problem lies with Hue Magic and/or node-red.
Flow to Reproduce
It relates to all flows that include the motion sensors. I do not have any other flows.

Expected behavior
Statuses of the motion sensors should get updated properly, or an error should be thrown when there is a problem in the connection.
Screenshots
Although everything is apparently connected, the status does not get updated

Please complete the following information:

Node-RED version: 1.2.9, using the official docker container
NodeJS version: v10.23.2
Device running Node-RED: Raspberry Pi 4 8GB

Additional context
Again, everything has worked very reliably for a few months, and my setup has not changed at all. I did notice that the Hue bridge has been automatically updated on March 17th, and although my problems have started only later on, this could perhaps be related. I have already removed hue-magic from node-red and reinstalled it, with no avail.
I'm not sure if it is related, but my bridge cannot be detected on the network automatically. After having entered the the (fixed) IP, it is able to get the API key automatically (i.e. it gets it after the push), and when adding sensors, it is able to find the sensors and fetch the names automatically. So the problem seems to be limited to network detection of the hub only.
The absence of any errors is disturbing, if there is anything I can do to monitor the connection more close, please tell me how to do so.
Thanks a lot in advance!
Erwin

I seem to have a similar problem, my motion sensors do not send messages at all - unless they are triggered by an inject node.

Node-RED version: 1.2.9, using the official docker container
NodeJS version: v10.23.2
Device running Node-RED: Raspberry Pi 4 4GB

FYI, I wasn't able to resolve this issue. The only thing left for me to do was reset the hub and hope for the best, but I didn't feel much for having to reconnect all the sensors, setup my scenes, reintegrate everything with home assistant,...
I did therefore a reset of the only 2 sensors that I was using with node-red, and connected them to a cheap zigbee2mqtt dongle. Works very reliable, and I haven't used node-red since then anymore.
Hope you have more luck,
Erwin

Should not happen with the v4 update

@Foddy here experiencing this situation.
Added HueMagic yesterday to get a Hue Button working in nodered. So far so good.
But after some minutes after deploying, HueMagic doesn't catch the button presses.
For me, the Hue Button is now simply worthless.
Running HueMagic 4.2.2.

@Foddy my experience:
Having the same problem with motion sensor and buttons. Among other things i use the lux-value from motion sensor to adjust brightness for my hue lights. After re-starting flow everything works as it should for some hours. Then at some random point in time there is no more messages sent from the nodes.
If manually querying the nodes i get the old values with old timestamp before it stopped working:

Looking at the sensors in Philips hue app on the mobile phone, it shows motion activity and button presses as it should so the devices are working and communicating correctly with the bridge.
I have downgraded from 4.2.2 to 4.2.1 but there is exactly the same problem.
All buttons and other sensors are completely worthless now.

Hi, I am experiencing the same issue with version 4.2.2. I am trying to catch a button press from a hue dimmer. Activity is shown in the Hue app, however after the first one or two button press after re-deploying flows huemagic stops to capture the button actions.


Tell user which backend (--swap-endpoint) is being used

When waiting to be sync'ed

And perhaps also just as part of the boot-sequence

closing this as this could leak sensitive information, such as infura api keys etc, since they are embedded in the URL


chore: make auth mandatory in recovered auth

optional authority if recovery failed doesn't make sense.
this should always be Address

Main point of Authority is it can be invalid, that was why it is made as a option


Usability: Change filter to a toggle/disclusure experience

Current when a user clicks "Filter" the whole right panel is swaped for the filter controls. They have to click Done to go back. This takes the user out of the context they were just in and could likely be disorienting. Make these changes to avoid that.

When a user clicks filter, keep the map list controls visible above so the user doesn't lose context of where they are and what they are doing.
When a user clicks the "Filter" button and the filter opens, change it to the selected state. When they click the Filter button again the filter should close and the button should back to its default state.
Change the "Done" button to a X icon without text. Clicking this will also close the filter. It's a more common way to get out of a view.

Hi! I would like to be assigned this issue :)

Sorry, I've been a bit tied up this week! PR should be up tomorrow. It's going to be reliant on #260 though so also waiting for that to merge.

@amyyeung17 heads up looks like the PR for #260 is merged to stage now


[docs] Add some additional ways of invoking lit tests by using llvm-l…

…it and working in the actual swift build directory.
I generally run lit tests in this way and was asked by @weissi to document this
here since my workflow has helped him to become more efficient.

@swift-ci smoke test and merge

Can you instead change the lines that use the source directory lit.py to include all your tips? And maybe get off the "build/test/subdir" recommendation that's not as flexible as --filter.

@jrose-apple The reason to use llvm-lit and do this in the build-directory is that it is significantly less lines to type and can be autocompleted really quickly when you are already in the swift build directory. For me it is ~8-9 key strokes. I would also be fine if we created a symlink called swift-lit in the swift build's bin directory. Would that be an acceptable compromise? That would even make it easier to invoke.

As you know, I'm generally against wrapper scripts that don't add significant value over the thing they wrap. :-(
My invocation is ../llvm/utils/lit/lit.py -sv ../build/ninja/swift-macosx-x86_64/test-macosx-x86_64, from the Swift source directory. Yours is ../llvm-macosx-x86_64/utils/llvm-lit -sv test-macosx-x86_64, with a shell session in the Swift build directory. I don't really see one of these as "simpler" than the other, especially since it's uncommon to type the whole thing out of scratch instead of running it from history.

@jrose-apple The statement that people will always invoke lit via their history is IMO a projection of ones own workflow and habits onto others... for example I definitely never invoke lit in this manner via my history. In my case, there are a few reasons that I do not do this:

I am often working headless on another machine with multiple shells open. I have found that the history file gets corrupted sometimes so I just type.
In docker containers, one can not have a history file unless one creates a long lived home directory which may not be an option for all users. I generally do not have that setup so I invoke it directly.

Additionally, I disagree that value is not provided. The value provided here is convenience and ease of use from the command line without needing to remember a weird path into LLVM. Instead, this places the given tool in the place where one would actively look for a script to run swift's test... the swift bin directory.
That being said, I would like to turn the problem around. Would adding this script actively hurt anyone's workflow? IMO given that it doesn't have impacts on anyone else and I would be spending my own time to add it (not yours = p)... I think it would be fine to add.

Adding the script means the script needs to be built, which means that the recommended testing workflow is more likely to fall over if you've only built specific targets (a pretty common thing to do). Having more ways to do things means behavior is more likely to diverge.
You're right that I'm projecting about the history. That said, I find having a shell open to the build directory to be very weird—that's part of your workflow but not mine.
The form that's recommended now is the most general form. We could make it clear that these are relative paths and therefore will work if you shorten either of them. After all, if you really wanted to make this short, you could just put lit.py in your PATH.

Ok. I am fine with that. Thanks for the discussion.


Add MySQL Support

Added mysql support.

The code style written is incompatible with the structure of the existing project. I am performing abstraction by using the User object for User and the Farmer object for Farmer. In this system, inheritance is being done from the SQL class based on its SQL type. Instead, could you please provide inheritance suitable for these classes?


chore: update smithy4s-compliance-tests, ... from 0.17.19 to 0.18.7

About this PR
📦 Updates

com.disneystreaming.smithy4s:smithy4s-compliance-tests
com.disneystreaming.smithy4s:smithy4s-core
com.disneystreaming.smithy4s:smithy4s-json
com.disneystreaming.smithy4s:smithy4s-sbt-codegen

from 0.17.19 to 0.18.7
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.disneystreaming.smithy4s" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.disneystreaming.smithy4s" }
}]

labels: library-update, early-semver-major, semver-spec-minor, version-scheme:early-semver, commit-count:1

Superseded by #243.


Rhode Island Veterans Day shift

If I believe this page, the Nov 11th 2017 (SAT) is shifted to the 13th (MON), instead of being shifted on FRI, as it should be.
Let's try to find out if:

this rule is officially written somewhere,
implement it for Rhode Island,
Try to find out if one or any other State follows it also.

Screen capture of the holidays page for Rhode Island:

As we can see, Nov 11th is shifted to the next MON.


Remove statistical geography registers from alpha

Context
Remove unrequired registers from alpha.
Changes proposed in this pull request
Remove the following registers from alpha:

statistical-geography-county-eng
statistical-geography-london-borough-eng
statistical-geography-metropolitan-counties-eng
statistical-geography-metropolitan-district-eng
statistical-geography-registration-district-eng
statistical-geography-registration-district-wls
statistical-geography-non-metropolitan-district-eng
statistical-geography-unitary-authority-eng

Guidance to review
All registers have been promoted to beta except for statistical-geography-metropolitan-counties-eng, which is no longer a register we're working on.

Should we remove statistical-geography-metropolitan-counties-eng from registers.tf too?

@karlbaker02 I did that here - https://github.com/openregister/deployment/pull/468/files#diff-9486b7f9f6501bf5901fee8aa80e1ee4L1089.
This PR is for openregister-java


Support drawImage() on canvas

drawImage() as defined here https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage should be supported by canvas.
This issue should be part of #92.

+1

Images can be drawn using putImageData().
The method drawImage() is used to draw DOM images, e.g. from <image> elements. Since we don't have a DOM, this method doesn't seem to make sense in Tabris.js.
Please reopen if you disagree.


Not working on last build

It no longer loads because openplanet changed signatures or something (loading in developer mode works fine).
I pushed a new version, so once it is approved it should work.


Remove MacOS .DS_Store files

They don't belong to the repository and should be put into .gitignore.

Thanks, i will remove it now.

You can do this from the terminal:
find . -name '.DS_Store' | xargs git rm --cached

it will remove the files from git but keep them in your directory.
and then you can add that file to .gitginore.

Thanks for the command but it didn't work, so I used this to remove it
git rm --cached '*.DS_Store'


add E2E testing

The README explains how to run the demo. We should have automated testing of PRs that ensures that those steps still work.
This needs a capable enough worker that supports kind. A Prow job can handle this. Not sure about GitHub actions. Prow might be better also because it integrates better with Tide.
How to test is open. It might just be a shell script that we run in the right environment.

/remove-lifecycle stale
/lifecycle frozen

I'll start looking into this one!
/assign

I just saw this.. @nojnhuh I opened up https://github.com/kubernetes-sigs/dra-example-driver/pull/56 to see if it would work with a github action. I was working on a make file to help streamline creation of the dra driver/kind.

Awesome! I'll re-assign this issue to you to keep track but I'll definitely take a look at the PR when it's ready. Thanks!
/unassign
/assign @kannon92

@pohly I think with https://github.com/kubernetes-sigs/dra-example-driver/pull/56, we can close this.

/close


Tests may fail nondeterministically on machines with slow IO

Version: 1.15.0
Platform: Linux green 4.13.8 #26 SMP Thu Nov 2 19:46:09 GMT 2017 armv7l GNU/Linux

make check failed for me on ipc_send_recv_pipe and fs_copyfile with timeouts. Rerunning it fixed the issue. I suspect this is linked to having my rootfs on a USB stick and simultaneously running other builds the first time round.

Thanks for the report.  Some of the tests are timing sensitive by nature.  Unfortunately there isn't much that can be done about that.


chore: refactor multi-osc device to state handler flow SOFIE-2485

About the Contributor
This pull request is posted on behalf of the NRK.
Type of Contribution
This is a: Code improvement
New Behavior
Refactors the MultiOSC device into the new state handler flow
Testing Instructions

Other Information

Status

[x] PR is ready to be reviewed.
[ ] The functionality has been tested by the author.
[x] Relevant unit tests has been added / updated.
[ ] Relevant documentation (code comments, system documentation) has been added / updated.

Codecov Report
Attention: Patch coverage is 83.67347% with 8 lines in your changes missing coverage. Please review.

Project coverage is 56.76%. Comparing base (6fef9f7) to head (6d95d5e).

Files
Patch %
Lines

...-state-resolver/src/integrations/multiOsc/index.ts
86.66%
6 Missing :warning:

...ges/timeline-state-resolver/src/service/devices.ts
33.33%
2 Missing :warning:

Additional details and impacted files
@@              Coverage Diff              @@
##           release52     #343      +/-   ##
=============================================
+ Coverage      55.77%   56.76%   +0.98%
=============================================
  Files            129      129
  Lines          10130    10095      -35
  Branches        2524     2522       -2
=============================================
+ Hits            5650     5730      +80
+ Misses          4103     3996     -107
+ Partials         377      369       -8

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Segfault with raw.plot() on macOS

Consider the following example:
import numpy as np
import mne
info = mne.create_info(10, 500, "eeg")
raw = mne.io.RawArray(np.random.normal(scale=1e-5, size=(10, 10000)), info)
raw.plot()

When I run this script interactively (i.e. from IPython with %run plot_example.py) everything works fine. However, when I run the script with python3 plot_example.py, I get a segfault:
[1]    44467 segmentation fault  python3 plot_example.py

I use Python 3.8.2 installed via Homebrew, but the same happens with Anaconda Python 3.7.6 and 3.8.2. Is it just me or can someone reproduce this?

I don't have the pb

Are you on a Mac? Which Python version do you use? Anaconda or Homebrew?

Actually, the problem occurs only for raw.plot(block=False) (the default). Everything works if I run raw.plot(block=True) instead.

Furthermore, I'm using the default macosx backend. I don't get the segfault with the qt5agg backend.

I confirm the segfault :
$MPLBACKEND=macosx python example.py
Segmentation fault: 11

The macOS backend always seems to have problems. I think we should recommend that people use PyQt5 in our install docs.
This sounds like an upstream bug with that backend so it would be good if you can strip down the plotting code to a minimal example and file an upstream bug. In the meantime I think we can leave this open here until we update our recommendation, and maybe add a workaround if it turns out to be doable.

I'll try to isolate this issue. Let's wait until we know more before we change any recommendations.

This seems to be the offending line:
https://github.com/mne-tools/mne-python/blob/487759e4b8f003311c1653f2f54592609a42c029/mne/viz/raw.py#L469
Commenting it out solves the segfault.

Or rather, it's this line in _close_event:
https://github.com/mne-tools/mne-python/blob/487759e4b8f003311c1653f2f54592609a42c029/mne/viz/raw.py#L528

Let's wait until we know more before we change any recommendations.

I'm not sure what else there is to wait for -- I've seen a handful of reports (from you mostly I think?) that end up being macOS-specific bugs not present in PyQt5. I'd also rather recommend a single backend (PyQt5) because it gives us a more uniform platform to try to support, especially since this is also what's used by our 3D plotting tools.

that end up being macOS-specific bugs not present in PyQt5.

I always thought this was the "officially" recommended backend anyway :) Why not emit a warning if a user wants to plot using a different backend?

Because macosx ist still the default backend on a Mac and it doesn't require an additional package. So I'd prefer if we just fix this bug.

FWIW our recommended env (and install docs, etc.) installs PyQt5, so I don't think this is a relevant consideration for what we recommend to our users. So I'm still +1 on officially recommending people not use the macOS backend...

You may be right. I'm using it anyway in MNELAB, but in an interactive session I'm too lazy to switch backends (yes I know that there is matplotlibrc). Even if we recommend the PyQt5 backend it would be nice if everything worked with the matplotlib defaults on all platforms. I don't even know why matplotlib doesn't make PyQt5 its default on macOS - it would be interesting to know why (maybe because of the additional package). According to this SO answer, they'd only need to move macosx back by one item.

@cbrnr can you look into whittling down the plotting code to a minimal example and file an upstream bug? It should really be fixed there. We can work around it eventually, but it would be nice to wait to see how they officially fix it first.

I'll try.

This will be a bit hard to debug, because the segfault doesn't occur when debugging.

Reported upstream: https://github.com/matplotlib/matplotlib/issues/17061

I'll close since it looks like @cbrnr is taking care of this upstream in https://github.com/matplotlib/matplotlib/pull/17084 (thanks!)


Install Error

Hi @dakota-hawkins:
Thanks for developing this useful package, but when I tried to install icat, some errors ouccured:
pip install icat-sc
`ERROR: Cannot install icat-sc==0.1.2 and icat-sc==0.1.3 because these package versions have conflicting dependencies.
The conflict is caused by:
icat-sc 0.1.3 depends on sslouvain
icat-sc 0.1.2 depends on sslouvain
To fix this you could try to:

loosen the range of package versions you've specified
remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies`
How could I solve it ? looking forward to your reply.
Lin-Yux

Hi Lin-Yux!
Thanks for trying out the package, and letting us know about the install error. I'll take a look at it tomorrow and let you know what fixes I come up with.
All the best!
Dakota

Hi Lin-Yux!
The issue is that the sslouvain package (found here) is not currently on PyPI. The package relies on a custom C extension, that I've been having some issue with in terms of building a .whl that fits a format accepted by PyPI.
On my linux machine, I have been able to install the package using the set of commands:
pip install louvain  # sslouvain is built from this package, this will ensure the necessary sslouvain dependencies are installed
git clone https://github.com/BradhamLab/sslouvain
cd sslouvain
python setup.py build
python setup.py install
pip install icat-sc

Obviously this is just a work around while I work on getting a functional .whl of sslouvain up on PyPI, so I'll leave this issue open until the entire package can be installed entirely via pip.
Please feel free to reach out if you have any other questions about the package including use / documentation, etc.
Best,
Dakota

Hi @dakota-hawkins:
I'm appreciate to receive your timely advice. I tried to clone BradhamLab/sslouvain and installed it on my machine, however, it still caused some error:
  (PyG) lyx@:~/icat/sslouvain$ python setup.py build

running build
running build_py
UPDATING build/lib.linux-x86_64-cpython-39/sslouvain/_version.py
set build/lib.linux-x86_64-cpython-39/sslouvain/_version.py to 'v0.1.1+6.gbeac73a'
running build_ext
Cannot find the C core of igraph on this system using pkg-config.
We will now try to download and compile the C core from scratch.
Version number of the C core: 0.1.1

Version 0.1.1 of the C core of igraph is not found among the nightly builds.
Use the --c-core-version switch to try a different version.

Could not download and compile the C core of igraph.

WARNING: we were not able to detect where igraph is installed on
your machine (if it is installed at all). We will use the fallback
library and include paths hardcoded in setup.py and hope that the
C core of igraph is installed there.

If the compilation fails and you are sure that igraph is installed
on your machine, adjust the following two variables in setup.py
accordingly and try again:

- LIBIGRAPH_FALLBACK_INCLUDE_DIRS ['/usr/include/igraph', '/usr/local/include/igraph']
- LIBIGRAPH_FALLBACK_LIBRARY_DIRS []

Build type: dynamic extension
Include path: /usr/include/igraph /usr/local/include/igraph
Library path:
Linked dynamic libraries: igraph
Linked static libraries:
Extra compiler options:
Extra linker options:
building 'sslouvain._c_louvain' extension
gcc -pthread -B /home/lyx/miniconda3/envs/PyG/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/lyx/miniconda3/envs/PyG/include -fPIC -O2 -isystem /home/lyx/miniconda3/envs/PyG/include -fPIC -Iinclude -I/usr/include/igraph -I/usr/local/include/igraph -I/home/lyx/miniconda3/envs/PyG/include/python3.9 -c src/CPMVertexPartition.cpp -o build/temp.linux-x86_64-cpython-39/src/CPMVertexPartition.o
In file included from include/MutableVertexPartition.h:5:0,
                 from include/ResolutionParameterVertexPartition.h:4,
                 from include/LinearResolutionParameterVertexPartition.h:4,
                 from include/CPMVertexPartition.h:4,
                 from src/CPMVertexPartition.cpp:1:
include/GraphHelper.h:4:20: fatal error: igraph.h: not files or dirs
compilation terminated.

I found that LIBIGRAPH_FALLBACK_INCLUDE_DIRS was not the path to my miniconda-env, so i changed these codes in setup.py,  however, it still failed:
src/MutableVertexPartition.cpp: In constructor ‘MutableVertexPartition::MutableVertexPartition(Graph*, const std::vector<long unsigned int>&, const std::vector<bool>&)’:
src/MutableVertexPartition.cpp:54:43: warning: delegating constructors only available with -std=c++11 or -std=gnu++11
   MutableVertexPartition(graph, membership) {
                                           ^
src/MutableVertexPartition.cpp: In member function ‘void MutableVertexPartition::set_mutable(const std::vector<bool>&)’:
src/MutableVertexPartition.cpp:177:16: error: ‘to_string’ is not a member of ‘std’
     msg.append(std::to_string(this -> graph -> vcount()));
                ^
src/MutableVertexPartition.cpp:179:16: error: ‘to_string’ is not a member of ‘std’
     msg.append(std::to_string(mutables.size()));
                ^
error: command '/usr/bin/gcc' failed with exit code 1

By the way, I just an user on Labs' HPC and do not have the root account. Could I get more your suggestions?
Best,
Lin-Yux

Hi Lin-Yux,
I just managed to generate a Linux .whl for the sslouvain package which was accepted by PyPI. pip install icat-sc should now work, and I've managed to get it to work from a fresh conda environment.
If you're not using Linux, I will probably need more time to figure out how to compile the package for different operating systems.
Let me know if the above works!

Hi dakota-hawkins!
Your suggestion does worked! For details, my python version is 3.9.13 and gcc version is 10.3.0 on linux.
Finally, thanks u to develop such a wonderful package and guide me to tackle the problem.
All best
Lin-Yux


BIGTOP-3601. Bump Kafka to 2.8.1.

https://issues.apache.org/jira/browse/BIGTOP-3601
We can upgrade to recent Kafka requiring ZooKeeper 3.5 now.

The kafka-server package assumes services are controlled by systemd. The tests should not directly call scripts such as kafka-server-start.sh and kafka-server-stop.sh

We need both zookeeper and kafka in the value of --stack for running smoke-tests by docker-provisioner like:
$ ./docker-hadoop.sh --create 1 --image bigtop/puppet:trunk-centos-8 --memory 16g --repo file:///bigtop-home/output --disable-gpg-check --stack zookeeper,kafka --smoke-tests kafka

Don't we need to bump the Zookeeper version as well?

ignore my last comment - I see a bump for zookeeper as well.

I am currently unable to build due to the following (I guess temporary error):
A problem occurred configuring root project 'kafka-2.8.1'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not resolve org.eclipse.jgit:org.eclipse.jgit:latest.release.
     Required by:
         project : > org.ajoberstar.grgit:grgit-core:4.1.0
      > Failed to list versions for org.eclipse.jgit:org.eclipse.jgit.
         > Unable to load Maven meta-data from https://dl.bintray.com/content/netflixoss/external-gradle-plugins/org/eclipse/jgit/org.eclipse.jgit/maven-metadata.xml.
            > Could not get resource 'https://dl.bintray.com/content/netflixoss/external-gradle-plugins/org/eclipse/jgit/org.eclipse.jgit/maven-metadata.xml'.
               > Could not GET 'https://dl.bintray.com/content/netflixoss/external-gradle-plugins/org/eclipse/jgit/org.eclipse.jgit/maven-metadata.xml'. Received status code 502 from server: Bad Gateway

@iwasakims I found this kafka issue that seem to remove the dl.bintray.com problem. I adapted the patch for the 2.8 branch:
diff --git a/build.gradle b/build.gradle
index e21609fd49..a187004b69 100644
--- a/build.gradle
+++ b/build.gradle
@@ -20,12 +20,10 @@ import java.nio.charset.StandardCharsets
 buildscript {
   repositories {
     mavenCentral()
-    jcenter()
     maven {
       url "https://plugins.gradle.org/m2/"
     }
   }
-  apply from: file('gradle/buildscript.gradle'), to: buildscript
   apply from: "$rootDir/gradle/dependencies.gradle"

   dependencies {
diff --git a/gradle/buildscript.gradle b/gradle/buildscript.gradle
deleted file mode 100644
index 83967bb47d..0000000000
--- a/gradle/buildscript.gradle
+++ /dev/null
@@ -1,23 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one or more
-// contributor license agreements.  See the NOTICE file distributed with
-// this work for additional information regarding copyright ownership.
-// The ASF licenses this file to You under the Apache License, Version 2.0
-// (the "License"); you may not use this file except in compliance with
-// the License.  You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-repositories {
-  repositories {
-    // For license plugin.
-    maven {
-      url 'https://dl.bintray.com/content/netflixoss/external-gradle-plugins/'
-    }
-  }
-}

Tested building (with the above patch) on Debian 11 x86, ran smoke tests, all succeeded.
Side note - Kafka 2.8.0 ships with KIP-500, that should allow running Kafka without Zookeeper (see https://issues.apache.org/jira/browse/KAFKA-9119). We could add a smoke test for this use case, to test with/without Zookeeper.

I found this kafka issue that seem to remove the dl.bintray.com problem. I adapted the patch for the 2.8 branch:

@elukey I got another error after applying the patch. How about using existing gradlew here and addressing the issue in follow-up JIRAs?
$ gradle wrapper

FAILURE: Build failed with an exception.

* Where:
Build file '/home/centos/srcs/kafka/build.gradle' line: 146

* What went wrong:
A problem occurred evaluating root project 'kafka'.
> org/eclipse/jgit/storage/file/FileRepositoryBuilder has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0

Side note - Kafka 2.8.0 ships with KIP-500, that should allow running Kafka without Zookeeper (see https://issues.apache.org/jira/browse/KAFKA-9119). We could add a smoke test for this use case, to test with/without Zookeeper.

KIP-500 seems to be labeled as preview in branch-2.8. I think we can address this after bumping Kafka to 3.x.

@iwasakims I am fine with any approach, I proposed the above patch because I still get a HTTP 502 for https://dl.bintray.com/content/netflixoss/external-gradle-plugins/org/eclipse/jgit/org.eclipse.jgit/maven-metadata.xml and my test builds on Debian fail consistently. Does it work for you?

@elukey I can reproduce the 502 error on both CentOS 8 and Debian 11 now. I'm going to add the patch of KAFKA-12293 and additional fix.

@elukey I got successful ./gradlew kafka-pkg  by additional fix on both CentOS 8 and Debian 11. Could you check this?

@iwasakims I can confirm that the fix works, I was able to build the package. I am currently unable to test the package via the Docker provisioner though, I opened https://issues.apache.org/jira/browse/BIGTOP-3630

I was of course lying, I was able to test your changes with the local repository settings.
Left a comment about some comments, but if those are ok feel free to proceed.
All good from my side! +1

I merged this. Thanks, @elukey.


Multithreaded startrail processing.

Inspired by @sebmueller. This splits up the input images into batches of work
more or less evenly divided across the number of processors.
Two new flags are added:

-n / --nice to make the workers be nice. default = 10
-m / --max-threads to control the number of worker threads. default = ncpus

Allows me to process a night of startrails on my workstation in under 3.5s.
 But if I had a multiprocessor machine I was throwing at an embarrassingly parallel problem like this, I'd want to use all available cores. The nice level should keep this from making your machine feel laggy but as long as you're not trying to do too much other stuff you'll get a nice speed-up.

Check the getopt manage. required_argument means that a value/parameter is required for that option, not that it is necessary to specify this flag.
Nproc is fine. Any who knows enough about the computer architecture to know that they have multiple processors/cores and is able to accurately assess the impact of these options will understand nproc.

I decide that -m 0 is silly because that would literally mean "do no work" so I just change the help to say that not specifying this means to use all cpus


Add Korean language for Puzzle MidnightConfig

Appreciated, but it's meant to be a short-term workaround anyway, which will be removed as soon as https://github.com/PuzzleMC/Puzzle/issues/9 is fixed.


Fix profile image responsiveness

Description
Inconsistent responsive spacing for profile image results in it being cut off between full-screen and mobile hidden breakpoint.
Solution
The profile image container should be consistently spaced relative to the edge of the browser window until mobile breakpoint.
Screenshot

This issue was solved at https://github.com/telosnetwork/telos-wallet/pull/72


Failed to compress for modules that weren't compiled

Working on adding this plugin in https://github.com/cb372/scalacache/pull/470 and I had to actually add an extra workflow step:
WorkflowStep.Sbt(List("benchmarks/compile"), name = Some("Compile Benchmarks"))

because the benchmarks were not being compiled at all or run in the CI pipeline. This means that no target/ directory was created for benchmarks and so the tar in the Compression step of the pipeline was failing out.
Not sure if it is really feasible to fix this situation or not. But I thought I would at least post an issue here for there to be a record of my workaround when encountering this.

This is a common issue unfortunately. :-( I wasn't able to find a nice solution to it other than githubWorkflowArtifactUpload. Basically, if you add githubWorkflowArtifactUpload := false to every project that doesn't produce a target directory when compiled from root, it resolves the issue. So in this case, benchmarks / githubWorkflowArtifactUpload would be false.

This is a common issue unfortunately. :-( I wasn't able to find a nice solution to it other than githubWorkflowArtifactUpload. Basically, if you add githubWorkflowArtifactUpload := false to every project that doesn't produce a target directory when compiled from root, it resolves the issue. So in this case, benchmarks / githubWorkflowArtifactUpload would be false.

Perfect, thanks for the suggestion! And also thanks for making this library, it is super nice to have!

Perfect, thanks for the suggestion! And also thanks for making this library, it is super nice to have!


⚠ Bofrost.lu has degraded performance

In bbe2303, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1336 ms

Resolved: Bofrost.lu performance has improved in 2ac4cfd after 6 minutes.


Lucky prestige stats

Calculates when to reset to enable "Lucky Digit", "Lucky Number", and "Lucky Payout" upgrades on the ascension screen and shows the numbers on the stats view.

So I've finally had some time to take a look and this looks very interesting!  I really hope I can add this in the future.  Thanks for your contribution!

Sure. Feel free to changing wording or rename variables. I'm pretty bad at wording/naming things. I looked at the commit to remind myself what this does and the stats' labels and variable names didn't make any sense considering what I think the intention is (showing number of remaining something before a reset should be done).
https://martinfowler.com/bliki/TwoHardThings.html

Great link, lol.

I reviewed the code, and it looks good! I'll go ahead and merge it now.


Please provide support for dotnet core 1.0,1.1,2.0 with mstest as well

Hi Team,
Please provide support for dotnet core 1.0,1.1,2.0 with mstest as well.
We are facing difficulty in writing the unit test case for the same in absence of autofixture support

Could you please describe the issue in more detail? Currently AutoFixture doesn't provide any special support for MSTest (see #704). That is not specific to .NET Core - it's the same for .NET Framework.
However, you can still AutoFixture with MSTest by manually constricting the Fixture instance:
[TestMethod]
public void SomeTest()
{
    // arrange
    var fixture = new Fixture();
    var value = fixture.Create<int>();
    var sut = new Sut();
    // act
    sut.SetValue(value);
    // assert
    Assert.AreEqual(value, sut.Value);
}

If your issue is about .NET Core support in general (not specific to MSTest) - this is what we are currently working on. We already support .NET Core, but that hasn't been released yet. See #404 for more detail. I'd expect the release in upcoming weeks. If you wish to early access the next version, use our preview feed.
Let me know if I misunderstood your question.

@gagandeep531 Any updates? 😉

I want to create complex object instance without initializing it with any data. let’s say i want to auto populate all the properties of an employee object with default values which contain address object as well as manager object inside employee object.
Cheers,
Gagan
Sent from my iPhone

On Oct 18, 2017, at 15:03, Alex Povar<EMAIL_ADDRESS>wrote:
@gagandeep531 Any updates? 😉
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I want to create complex object instance without initializing it with any data.

That's exactly what this product does. However, you issue is named "Please provide support for dotnet core 1.0,1.1,2.0 with mstest as well.". Could you elaborate which exact support you requested? Is that specific to MSTest or to .NET Core or to both?

I was not able to install auto fixture in vs 2017 professional using nuget package manager.It rollback changes after installation is dmfailed. My application is built on dotnetcore 1.1 and we will migrate it to 2.0 in coming week.
Sent from my iPhone

On Oct 18, 2017, at 15:43, Alex Povar<EMAIL_ADDRESS>wrote:
I want to create complex object instance without initializing it with any data.
That's exactly what this product does. However, you issue is named "Please provide support for dotnet core 1.0,1.1,2.0 with mstest as well.". Could you elaborate which exact support you requested? Is that specific to MSTest or to .NET Core or to both?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

OK, I got it. You request was about .NET Core support.
I'm going to perform v4-rc1 release with .NET Core support later today, so you should be able to use AutoFixture.
Closing this one as no actions are actually required.

Thanks Alex for your immediate support.
Cheers! 😀
Sent from my iPhone

On Oct 18, 2017, at 15:49, Alex Povar<EMAIL_ADDRESS>wrote:
Closed #881.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

JFYI: I released v4 rc1 to the NuGet, so you can consume and use it.


Code/Dataset release & licensing

Really exciting work, thank you!
Interested to know what are your plans in regards to exposing the dataset, training instructions and/or pre-trained model?
Thanks again!

Thanks for the interest! And yes we plan to release both processed data (both in pre-extracted features as well as preprocessing code for 3D scene datasets), training instructions, as well as pre-trained checkpoints shortly (as it is under review). Stay tuned!!!

Hi. Thanks for the great work.
Do you have an ETA regarding the release ? (just to get a sense if it's going in a few days, or a few weeks / months).

Yes, we are planning to announce the data after the CVPR decision is released. So this will be the beginning of March, stay tuned!

Hi, @Buzz-Beater
Very promising work! Do you have any plan about release the data recently? Thanks.

Hi, @Buzz-Beater I also want to know when you will release the data. Thanks.

Hi, thank you all for your interest and patience! We have just released SceneVerse data, check out the README for downloading instructions! We will release the training/inference codes shortly, stay tuned!

Hi, @Buzz-Beater
Thanks for the impressive work. Would you release the scene graph data mentioned in paper?

Hi, @Boyu-Mi
Scene graphs and the data generation process are currently not within the data release plan. We intend to iterate on the data generation process based on feedback from the current data release. We will release the generation pipeline and scene graphs in the future after refinement.

As we have gradually released data and train/inference codes, we are closing this issue for now, feel free to raise any new issues regrading SceneVerse :-)


Missing SD conversions

GoFSH'ing on https://github.com/hl7dk/dk-core/tree/master/input/resources results in only 3 converted resources: one instance, a codesystem and a valueset. How far down in the backlog of GoFSH would it be to successfully convert more of the resources within such an IG (that contains a single resource SD and an couple of datatype SD's)?

Hi @jvitrifork -- thanks for reporting this.  Looking at the repository link you provided, I think the main issue is that GoFSH currently only reads in JSON files; but dk-core contains many XML files as well.  We're currently working on a GoFSH 1.0 release that would be feature-complete for JSON definitions; but hadn't yet scheduled support for XML.  That said, we can look into it to see how difficult it would (or wouldn't) be to slip in XML support.
One possible workaround is to run the IG Publisher on your project first and then point GoFSH at the generated output folder, which I think should contain JSON definitions for everything.  But if you're not in a big time crunch, you might want to wait for GoFSH 1.0.

Thx for the advise @cmoesel  - sure, the output folder contains the files in json format. Trace is the following, which implies an actual bug I believe:
output % gofsh . -l debug
info  Starting goFSH v0.4.0 (implements FHIR Shorthand specification v0.13.x)
info  Using input directory: .
info  Found 32 JSON files.
debug Skipping non-FHIR JSON file: canonicals.json
debug Skipping non-FHIR JSON file: package.manifest.json
debug Skipping non-FHIR JSON file: qa.json
debug Skipping non-FHIR JSON file: usage-stats.json
info  Checking local cache for hl7.fhir.r4.core#4.0.1...
info  Found hl7.fhir.r4.core#4.0.1 in local cache.
info  Loaded package hl7.fhir.r4.core#4.0.1
info  Using output directory: gofsh
(node:84693) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
(node:84693) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
warn  InstanceOf definition not found for episodeOfCare-example-wrong. The ResourceType of the instance will be used as a base.
warn  InstanceOf definition not found for episodeOfCare-example. The ResourceType of the instance will be used as a base.
debug Loaded 19 optimizers from /usr/local/lib/node_modules/gofsh/dist/optimizer/plugins
debug Running optimizer simplify_mapping_names: Simplify Mapping names by removing the appended source information from the name (where possible)
debug Running optimizer resolve_value_set_component_rule_urls: Replace URLs in value set rules with their names or aliases
error Could not use input directory: Cannot read property 'match' of undefined

output directory is obtained by simply running the publisher on the IG java  -jar publisher.jar -ig ig.ini

Darn.  We'll take a look!

I managed to find and fix the issue that caused SUSHI to exit early when running against the IG output directory.  So this should be fixed in the next release (tentatively scheduled for Monday).  We're also looking at what it might look like to support XML input.

FYI @tmh-mjolner

I'm closing this issue as GoFSH 1.0.0 was released with the fix for the identified bug as well as support for XML.


Formatting wrap text will result in infinite indentation and auto-add double quotes for value

Before formatting

After formatting

Two problems:

The wrap text would indent Infinitely.
Shouldn't add double quotes for value automatically. class=p
( This should be a personal habit. )

The following code give you to test:

Market — your business
        {{ i + 1 }}

        Take the guesswork out of marketing with
        built-in tools that help you create, execute,
        and analyze campaigns on Facebook and Google.

You could set the wrap to 40 characters and have no issues. Otherwise, the formatter doesn't respond well to enter keys/line breaks in paragraphs of text


Consider adding PostgreSQL as database option.

PostgreSQL is a wildly used database server for web. A few of my clients use it, so it would be awesome if it was included. I believe it would be a great addition since i feel you try to offer multiple option (version, apache/nginx)

Sure will add that soon.

Added pgsql 9.6.

docker-compose up pg


Fix #766- Done making temperature converter app

Please describe the changes this PR makes and why it should be merged:
Status

[X] Code changes have been tested against prettier, or there are no code changes
[X] I know how to update typings and have done so, or typings don't need updating

Semantic versioning classification:

[X] This PR changes the codebase

[X] This PR includes breaking changes (methods removed or renamed, parameters moved or removed)
[X] This PR changes the internal workings with no modifications to the external API (bug fixes, performance improvements)

[X] This PR only includes non-code changes, like changes to documentation, README, etc.

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

@tobySolutions please kindly review this!

@tobySolutions why is it closed, shouldn't it get merged?


chore: bdd-nh-1581330451 to 0.0.1

chore: Promote bdd-nh-1581330451 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


add MIT license and slight README.md correction to number of parallel jobs.

This should also probably be included in an issue, but when transferring a large amount of data line 52 appears to have issues doing the math it needs to do. I am transferring roughly 1.7TB of files and got this error:
./prsync: line 52: 1.76084e+12: syntax error: invalid arithmetic operator (error token is ".76084e+12")

This should also probably be included in an issue, but when transferring a large amount of data line 52 appears to have issues doing the math it needs to do. I am transferring roughly 1.7TB of files and got this error:
./prsync: line 52: 1.76084e+12: syntax error: invalid arithmetic operator (error token is ".76084e+12")

I think this depends on the version of awk being used. In any case its easily fixable using a printf.
Thanks for the PR, I'll review it shortly.

The line 52 issue really isn't a big deal. The script continues running even with the error and it appears to just be a info/debug message that lists the total size of all files being transferred.

I've now rolled these changes into main. Thanks for the PR!


docs: Update GMK resource examples now that Clusters and Topic resources are GA

Description
GMK Clusters and Topics are getting promoted to GA after the submission of https://github.com/GoogleCloudPlatform/magic-modules/pull/12264. We need to update our public documentation to use our GA resources instead of the google-beta ones. Issue: https://b.corp.google.com/issues/377724373
Checklist
Readiness

Please approve this PR, but wait submit after https://github.com/GoogleCloudPlatform/magic-modules/pull/12264 is submitted.

Style

[x] My sample follows the rules described for Terraform in the Effective Samples style guide
[x] My sample follows the other requirements and best practices in the Contributing
guide

Testing

[x] I have performed tests described in the Contributing guide:

[x] Tests pass: terraform apply
[x] Lint pass: terraform fmt check

Intended location

[x] Yes, this sample will be (or already is) included on cloud.google.com
Location(s): https://cloud.google.com/managed-service-for-apache-kafka/docs/create-cluster#create

[ ] No, this sample won't be included on cloud.google.com
Reason:

API enablement

[x] If the sample needs an API enabled to pass testing, I have added the service to the Test setup file

Review

[x] If this sample adds a new directory, I have added codeowners to the CODEOWNERS file

This may need (but I might not be able to successfully trigger this).
/gcbrun

Error: Error creating Cluster: googleapi: Error 404: Resource "projects/261919062524/regions/us-central1/subnetworks/default" was not found

This isn't being specifically created in the sample, but I'm not sure if it should exist in the project. You could either use the resource to create the subnetwork specifically, or use the data resource to pull the existing information (https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/compute_subnetwork).
I'll /gcbrun it again to confirm it's not a temporary issue (previous issues were "internal errors", this is something specific)

"default" subnetworks should exist in the project as long as the compute API is enabled. But I checked and the project with project number "261919062524" is being deleted or already has been deleted.

The tests should be running, now that I've updated the Cluster and Topic samples to make their own subnets with the google_compute_subnetwork resource.

Please let me know if there's anything else that I can do!

Hi, I'm not able to see what went wrong in the latest CI test. Could someone give me some insights so I can try and fix the errors?

@glasnt My team would like to include the project field on the google_managed_kafka_cluster and google_managed_kafka_topic resource samples. I have already committed these changes, but given that this might not be standard practice (@apeabody), I would like you to take a look at this again if possible. We decided to include the project field in b/377892703.


Can't set the key using ENV

Rails 4.2.0
Ruby 2.1.4
I'm using Alchemy API with Figaro so I can protect my API key, but it's not passing in the key. I have to set the key directly. Any sense of why that might be happening?

Never mind. Issue was on my end.


Is it possible to get word count to include included sections?

I don't know if this is an easy extension.. but is it possible to include text that is in \input{someOther.tex} in the word count?

Good question, I have not really explored possible options, will look into it.  Let me know if you come across with some solutions.

Defintely!

Closing this issue since it is unlikely that we need to combine separate .tex files into a file.


Add support for Swagger model definitions.

https://github.com/wordnik/swagger-core/wiki/Datatypes#wiki-complex-types
Following the same pattern as swagger_api, you simply do:
      swagger_model :Tag do
        description "A Tag object."
        property :id, :integer, :required, "User Id"
        property :name, :string, :optional, "Name", foo: "test"
      end

And then the root JSON object will have:
"models": {
  "id": "Tag",
  "required": ["id"],
  "description": "A Tag object.",
  "properties": {
    "name": {
      "type": "string",
      "description": "Name",
      "foo": "test",
    },
    "id": {
      "type": "integer",
      "description": "User Id",
    }
  }
}

@fotinakis - is the swagger_model definition supposed to be an example of a response?
to make it show up in the sidebar of UI, I had to reference it as type :Tag in swagger_api, although it doesn't display the information correctly.
My swagger action and model are defined like so:
  swagger_model :User do
    description 'A User object'
    property :id, :integer, :required, "User ID"
    property :firstname, :string, :required, "First name"
    property :lastname, :string, :required, "Last name"
  end

  swagger_api :index do
    summary 'Returns list of users'
    response :unauthorized
    response :not_acceptable
    response :unprocessable_entity
    type :User
  end

but the output looks like this:

If it's supposed to be just an example of a response, is there any way we can put dummy data rather than  it having display a 0 for an integer and "string" for a string. Also, in the schema, the attributes are all "optional", but what does this imply? For a response, all the attributes being returned aren't really "optional", correct?

@peyterkim I have no idea anymore on this project, I'm the author of a different gem now (swagger-blocks) which has correct support for what you're looking for. Sorry!

@fotinakis - oh! i was trying to get swagger-blocks to work before trying this. with swagger ui 2.0, it now looks for swagger.json rather than api-docs.json. In order to generate swagger.json, do you have to run
swagger_data = Swagger::Blocks.build_root_json(SWAGGERED_CLASSES)
File.open('swagger.json', 'w') { |file| file.write(swagger_data.to_json) }

every time?
I had the route go to /apidocs, which goes to Apidocs#index:
  def index
    render json: Swagger::Blocks.build_root_json(SWAGGERED_CLASSES)
  end

this just generated a JSON blob. Shouldn't this work right out of the box for Rails? How did you set up Swagger UI to get swagger-blocks to work?

Yes, it works out of the box, you don't have to write files at all. Swagger UI can be configured to point at any JSON endpoint not just swagger.json. See: https://github.com/swagger-api/swagger-ui#swaggerui
-- If you have further questions, let's move this discussion to the swagger-blocks repo, since these questions are not about swagger-docs.


Dashboard: Add JWT as a policy

UX Design:
https://www.figma.com/file/wecNPLnwPgaQiZaXDWolSa/Kusk-Gateway-Dashboard?node-id=3717%3A42899&t=RaVSAFXWZWsPRZl9-4

Kusk API has a bug. https://github.com/kubeshop/kusk-gateway/issues/1000


dependenciesupgrade paimon to 0.8.1

Proposed changes
FYI https://github.com/apache/doris-shade/pull/46

run buildall

run buildall


Allow for other fields in CMDT

The Field lookup in CMDT does not handle all fields.
Eg you can't use Country as an Indicator field.
And the combined field of "Shipping Address" does not work.
So it would be good to be able to override the selected field with the API Name of a field.
Note: that may make #43 work too!

This is amazing now! Thank you @tschug

#94


Observability docs issue - App Insights

In the dapr observability docs for setting up Azure Application Insights with the open telemetry collector: https://docs.dapr.io/operations/monitoring/open-telemetry-collector/#how-to-configure-distributed-tracing-with-application-insights , it asks for :
Check out the file open-telemetry-collector.yaml and replace the  placeholder with your APP_INSIGHTS_KEY. However that file doesn't contain an APP_Insight_Key.
It does however contain: azuremonitor:
endpoint: "https://dc.services.visualstudio.com/v2/track"
instrumentation_key: "".
Filling that with an App Insight Instrumentation key does nothing.

Thank you for the issue! This was addressed in a recent revamp of observability docs, now the page is https://docs.dapr.io/operations/monitoring/tracing/open-telemetry-collector-appinsights/ and mentioned <INSTRUMENTATION-KEY> which is also what is in the YAML.
If you think this is still not addresses the issue you mention please reopen with comment.


rendering & voxelizations

from where can i download rendering & voxelizations choy et al. 2016 as mentioned in building Dataset?

Hi @itszash,
you can find the data here under "Datasets".
Best,
Lars

Fixed broken link in 77192fd6af03b1e5ae9f68032721622da4142e9d.


Add 3 teams modules

botbuilder-teams
botframework-connector-teams
botframework-schema-teams

Pull Request Test Coverage Report for Build 78753

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 88.594%

Totals

Change from base Build 77828:
0.0%

Covered Lines:
4428

Relevant Lines:
4804

💛  - Coveralls


OT - union type to array or infer how many types are in the union

Sorry for this OT, but I'm struggling with this problem. Do you know if it's possible to get amount of a mapped object key or, in other words, the amount of types in an union type ?
I want to check against an array of a certain length. The length is the number of keys of some mapped object but is dynamic (could be any property value of something like:
interface I {
foo: {a:number}
bar: {g: boolean}
}
These types are autogenerated by a tool from an API specification. The user defines the key when the function is called f('foo', ...) so it's unknown at compile time.
So far I'm able to validate members of the input array, but I would also like to validate it's length in some cases. So I need a way to get the number of keys in a mapped object or the number of types in an union type (since it seems object keys type are always represented with union types)
// I want to make sure arg0 is an array of length equals to the number of keys of I[T] (given)
function f(type: T, arg0: Tuple<T, UnionCount>)
type Tuple<TItem, TLength extends number> = [TItem, ...TItem[]] & { length: TLength };
type ValueOfStringKey<T extends { [k: string]: any }, K extends string> = T[K];
In that case, do you know if it's possible to implement the UnionCount helper ? You have the opposite (array to union) in your library so I though perhaps you have a clue.
Thanks in advanced, BTW your library is awesome. Thanks

I must admit, there are some scary things going on in here. But I gave it a shot, we'll see if it is useful to you. I can't seem to find a way to send a union to an array or tuple, but there is an open discussion about it in the TS repo: https://github.com/Microsoft/TypeScript/issues/13298. The typescript team seems to be making headway on building up the tuple type, so I could see something like this making its way in at some point.
From what I gather, one other way to solve your problem would be to create a utility that can count the number of keys in an object? For instance:
interface Car {
  tires: number;
  doors: string;
  engine: object;
}

type numKeys = CountKeys<Car>; // 3

To do this, I relied on this stackoverflow question: https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type
It came out to this:
interface I {
    hi: number;
    there: string;
    friend: string;
}

type IntersectionOfValues<T> =
  {[K in keyof T]: (p: T[K]) => void} extends
    { [n: string]: (p: infer I) => void } ? I : never;

type a = IntersectionOfValues<I>

type IntersectionOfFunctionsToTuple<F> =
    F extends {
        (a: infer A): void;
        (b: infer B): void;
        (c: infer C): void;
    } ? [A, B, C] :
    F extends {
        (a: infer A): void;
        (b: infer B): void;
    } ? [A, B] :
    F extends {
        (a: infer A): void
    } ? [A] :
    never;

type ToTuple<T> =
    IntersectionOfFunctionsToTuple<
        IntersectionOfValues<{ [K in keyof T]: (v: K) => void }>
    >;

type CountKeys<T> = ToTuple<T>['length'];

type numKeys = CountKeys<I>;

It is too bad that it would require adding more cases to IntersectionOfFunctionsToTuple to make this work, but maybe you'll only need a fixed, finite number of cases?
Hopefully, this helps! I'm glad simplytyped has been useful for you :)

Thank you very much! , yes It's not trouble to add more cases manually to IntersectionOfFunctionsToTuple, and I also feel that something is scary about this. But I really want to validate that, not only the values of an array argument are correct, but also its length. THanks again!!! keep it up !

No problem! Really glad I was able to help. Hopefully, typescript will make it possible to come up with a more elegant solution to some of these with time. The language has been growing and improving so quickly, I imagine a better solution will be possible in the not too distant future.

I agree and although I'm not an expert on many strongly typed languages, I wonder if others allow API authors to be as declarative as you can with TypeScript! I also envision great future not only in this area but also on language service plugins, compiler API, transformations, etc. The future will be interesting... Thanks!

// union to intersection of functions
type UnionToIoF<Union extends keyof any> =
    { [K in Union]: (p: (v: K) => void) => void } extends
    { [K in Union]: (p: infer I) => void } ? I : never;

// intersection of functions to tuple
type IoFToTuple<IoF> = IoF extends {
    (a: infer A): void;
    (b: infer B): void;
    (c: infer C): void;
    (d: infer D): void;
    (e: infer E): void;
    (f: infer F): void;
    (g: infer G): void;
    (h: infer H): void;
} ? [A, B, C, D, E, F, G, H] : never;

type UnionToTuple8<U extends keyof any> = IoFToTuple<UnionToIoF<U>>;

type Push8<A extends any[], B extends any[]> =
    ((a: A[0], b: A[1], c: A[2], d: A[3], e: A[4], f: A[5], g: A[6], h: A[7], ...r: B) => void) extends
    (...r: infer R) => void ? R : never;

type UnionToTupleRecursively<Union extends keyof any, Result extends any[]> = {
    1: Result;
    0: UnionToTupleRecursively_<Union, UnionToTuple8<Union>, Result>;
}[[Union] extends [never] ? 1 : 0];

type UnionToTupleRecursively_<Union extends keyof any, Tuple8 extends any[], Result extends any[]> =
    UnionToTupleRecursively<Exclude<Union, Tuple8[number]>, Push8<Tuple8, Result>>;

type EraseEmptyTypes<T> = { [P in keyof T]: {} extends T[P] ? never : T[P] };

type UnionToTuple<U extends keyof any> = EraseEmptyTypes<UnionToTupleRecursively<U, []>>;

type UnionMoreThan100 = keyof [
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0
];
type y = UnionToTuple<UnionMoreThan100>;

@andnp I made some improvements so that it can work with union of number and symbol not only string, also made it  work with larger union, BTW, in your original IntersectionOfFunctionsToTuple, more conditional types make no differences with single one, it always results empty interface if the intersection doesn't fit in, right now I just simply convert them into never.
With this we can iterate properties now.

// union to intersection of functions
type UnionToIoF<U> =
    (U extends any ? (k: (x: U) => void) => void : never) extends
    ((k: infer I) => void) ? I : never

// intersection of functions to tuple
type IoFToTuple<IoF> = IoF extends {
    (a: infer A): void;
    (b: infer B): void;
    (c: infer C): void;
    (d: infer D): void;
    (e: infer E): void;
    (f: infer F): void;
    (g: infer G): void;
    (h: infer H): void;
} ? [A, B, C, D, E, F, G, H] : never;

type UnionToTuple8<U> = IoFToTuple<UnionToIoF<U>>;

type Concat8<A extends any[], B extends any[]> =
    ((a: A[0], b: A[1], c: A[2], d: A[3], e: A[4], f: A[5], g: A[6], h: A[7], ...r: B) => void) extends
    (...r: infer R) => void ? R : never;

type UnionToTupleRecursively<Union, Result extends any[]> = {
    1: Result;
    0: UnionToTupleRecursively_<Union, UnionToTuple8<Union>, Result>;
    // 0: UnionToTupleRecursively<Exclude<Union, UnionToTuple8<Union>[number]>, Concat8<UnionToTuple8<Union>, Result>>
}[[Union] extends [never] ? 1 : 0];

type UnionToTupleRecursively_<Union, Tuple8 extends any[], Result extends any[]> =
    UnionToTupleRecursively<Exclude<Union, Tuple8[number]>, Concat8<Tuple8, Result>>;

type EraseEmptyTypes<T> = { [P in keyof T]: {} extends T[P] ? never : T[P] };

type UnionToTuple<U> = EraseEmptyTypes<UnionToTupleRecursively<U, []>>;

type UnionMoreThan100 = keyof [
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0
];

type keys = UnionToTuple<UnionMoreThan100>;

@andnp I made some improvements so that it can work with union of any type, also made it work with larger union. BTW, in your original IntersectionOfFunctionsToTuple, more conditional types make no differences with single one, it always results empty interface if the intersection doesn't fit in, right now I just simply convert them into never.
With this we can iterate properties now.

I don't want to enforce the union order the tuple, as in @fightingcat solution.
Based on @andnp previous solution, this was what I came up with:
interface I {
  hi: number;
  there: string;
  friend: string;
}

// takes an object, and returns its values in an intersection
type IntersectionOfValues<T> =
  { [K in keyof T]: (p: T[K]) => void } extends
  { [n: string]: (p: infer I) => void }
  ? I
  : never;

// example:
type a = IntersectionOfValues<I>; // => number & string & string
// which simplifies to // => number & string

// takes the first argument of each function in the intersection and puts it into the tuple
// order is not guaranteed, so this isn't a very useful type outside of this context
type IntersectionOfFunctionsToTuple<F> =
  F extends {
    (a: infer A): void;
    (b: infer B): void;
    (c: infer C): void;
  } ? [A, B, C] :
  F extends {
    (a: infer A): void;
    (b: infer B): void;
  } ? [A, B] :
  F extends {
    (a: infer A): void
  } ? [A] :
  never;

type ToTuple<T> =
  // pass the intersection of these functions to create the tuple type
  // store the keys as arguments to functions so that they can be retrieved with inference later
  IntersectionOfFunctionsToTuple<
    // convert each key into a function that takes that key type as an argument
    IntersectionOfValues<{ [K in keyof T]: (v: K) => void }>
  >;
type CountKeys<T> = ToTuple<T>['length'];

type ArrayOf<T, L> = 1 extends L ? [T] : 2 extends L ? [T, T] : 3 extends L ? [T, T, T] : never
type input = ArrayOf<I, 2>

@fightingcat How is that doesn't fail to compile since UnionToTupleRecursively and UnionToTupleRecursively_  depend on each other ?  And BTW if I try to use your type to build an tuple but without enforcing the union order, then the compiler won't finish to compile - seems like it enters on your recursion (?)  - tested with TypeScript 3.3.333 and 3.1.3, here is the code:
// union to intersection of functions
type UnionToIoF<U> =
  (U extends any ? (k: (x: U) => void) => void : never) extends
  ((k: infer I) => void) ? I : never

// return last element from Union
type UnionPop<U> = UnionToIoF<U> extends { (a: infer A): void; } ? A : never;

// prepend an element to a tuple.
type Prepend<U, T extends any[]> =
  ((a: U, ...r: T) => void) extends (...r: infer R) => void ? R : never;

type UnionToTupleRecursively<Union, Result extends any[]> = {
  1: Result;
  0: UnionToTupleRecursively_<Union, UnionPop<Union>, Result>;
  // 0: UnionToTupleRecursively<Exclude<Union, UnionPop<Union>>, Prepend<UnionPop<Union>, Result>>
}[[Union] extends [never] ? 1 : 0];

type UnionToTupleRecursively_<Union, Element, Result extends any[]> =
UnionToTupleRecursively<Exclude<Union, Element>, Prepend<Element, Result>>;

type UnionToTupleOrdered<U> = UnionToTupleRecursively<U, []>;

// /** return an fixed length array with item type TItem */
type Tuple<TItem, TLength extends number> = [TItem, ...TItem[]] & {
	length: TLength;
};

type UnionCount<T>=UnionToTupleOrdered<T>['length']
type UnionToTuple<T, L  extends number> = Tuple<T,  UnionCount<T>>
type UserTuple = UnionToTuple<1|2, 2>
var c : UserTuple = [1, 2]

@cancerberoSgx Try restarting ts server.

@cancerberoSgx I'm guessing, it caused ts server into infinte recursion while checking constrain for Tuple<T,  UnionCount<T>>, in the case T is not instantiated, don't know how typescript do the check, haven't read the code (have a shitty network to clone the repo).
Right now I have no idea how to fix it, I think it's a bug of type checker.

I think it's a TS issue failing to verify type declaration referencing itself in that particular case. And your solution is exploiting that issue. But just a guess.
@andnp BTW I'm also a collection of some type helpers (not as advanced as yours) and I wanted to test these, but instead using a compile-time check like you are doing (or tsd-check) does, I wanted to known if it's possible to do it at run time, by compiling the code at run time (using the same project configuration). This way I'm able to check compile error situations. For example:
describe('particular problem tsd-check-runtime is good at', ()=>{
  it('Tuple wont verify out of range access', ()=>{
    expect(`
      declare var a: Tuple<number, 2>
      var c = a[3]
    `).toCompile()
  })
  it('ArrayLiteral will verify out of range access', ()=>{
    expect(`
      declare var a: ArrayLiteral<number, 2>
      var c = a[3]
    `).not.toCompile()
  })
})

/* the types are:
export type Tuple<TItem, TLength extends number> = [TItem, ...TItem[]] & {
  length: TLength
}
export type ArrayLiteral<T, L> = 1 extends L ? [] :1 extends L ? [T] : 2 extends L ? [T, T] : 3 extends L ? [T, T, T] : 4 extends L ? [T, T, T, T]: 5 extends L ? [T, T, T, T, T] : 6 extends L ? [T, T, T, T, T, T]: 7 extends L ? [T, T, T, T, T, T, T]: 8 extends L ? [T, T, T, T, T, T, T, T]: 9 extends L ? [T, T, T, T, T, T, T, T, T]: never
*/

Wonder if you know a way of perform these kind of checking without having to compile at runtime ? Also wanted to share the tool with you since perhaps could be useful in this project.
The tool: https://github.com/cancerberoSgx/tsd-check-runtime
My poor man's type library: https://github.com/cancerberoSgx/misc-utils-of-mine/tree/master/misc-utils-of-mine-typescript
Would love your thoughts about this. Thanks!, keep it up


WMS ID: 1700 -  Hybrid Database Configuration and Compliance Management

Oracle Cloud world 22 Compliance configuration modifications

please refer QA checklist document, image names should be all lowercase, include WMS ID in PR

include WMS ID in PR , may I know what it is. Can you explain with an example.

When you submitted a workshop request for this workshop in WMS, the workshop is assigned an ID. For example:

Updating image names to lower cases, will reopen new pull request.


Notebooks: Add ability to run ADS commands

Simple implementation for running ADS commands via notebooks. I don't anticipate that many people will leverage this functionality outside of our team, but I know this is an ask for scenarios such as the DRI notebook.
Wanted to keep it notebook provider-agnostic, so that's why this lives in the cell model for now.

Configured by a setting which is set to false by default.

Oh and there's a test that needs fixing now too
Cell Model Model Future handling should stringify in the correct order
(from the distance a faint sound of someone chanting add more tests! add more tests! is heard)
😁


2457: "Only by appointment" opening hours

Short description

There are locations where you always need an appointment, or need an appointment on specific days. There already is a toggle for this in the CMS, we just need to show that in the app as well.
Design is here: https://www.figma.com/design/cA4F2MwHs2LNGviOWUjfE9/Integreat-Tickets-Frontend?node-id=1853-2530&t=phaOGuOMWxFRdgel-0
On desktop, there should be a pretty big tooltip. After some chatting with Andy, we decided to remove our own tooltip and instead install react-tooltip
Proposed changes

Added appointmentOnly to the OpeningHoursModel
Added that info icon to OpeningEntry in native and web
Added a little overlay in native with the info of what the icon means
Added a tooltip in web with that explanation
Replaced other instances of our tooltip with the one from react-tooltip

Side effects

I removed <g id="error_outline"> from the note.svg. I'm pretty sure that doesn't have any side effects.

Resolved issues

Fixes: #2457
Fixes: #2845

In general, I like the new tooltip component. However, I found it to have weird styling issues for the second icon here (http://localhost:9000/testumgebung/de/locations/test-öffnungszeiten-mit-termin):

I haven't been able to reproduce this in Firefox, Chrome, or Safari. Any hints on how to reproduce it?

In general, I like the new tooltip component. However, I found it to have weird styling issues for the second icon here (http://localhost:9000/testumgebung/de/locations/test-öffnungszeiten-mit-termin):

I haven't been able to reproduce this in Firefox, Chrome, or Safari. Any hints on how to reproduce it?

I can still reproduce if I set only Monday and Thursday to require an appointment. Did you try that or with all days requiring an appointment? With the latter I also don't experience this.

I can still reproduce if I set only Monday and Thursday to require an appointment. Did you try that or with all days requiring an appointment? With the latter I also don't experience this.

Those are exactly the ones I'm using, Monday and Thursday (aka the link you posted :)). No dice.

I can still reproduce if I set only Monday and Thursday to require an appointment. Did you try that or with all days requiring an appointment? With the latter I also don't experience this.

Those are exactly the ones I'm using, Monday and Thursday (aka the link you posted :)). No dice. Any other ideas?

Sadly no idea, no :/ Only happens with firefox for me though. Can some of you reproduce @ztefanie @f1sh1918? Tried playing around with the CSS and was not able to figure it out...


[RFC] Enforcing Replica Count Control in ISM Policy Creation Path

Is your feature request related to a problem?
This is related to https://github.com/opensearch-project/OpenSearch/issues/3461
The OpenSearch changes will make sure create index/modify index settings path adhere to proper replica count. If not, an exception will be thrown to the API Call.
Aim : Enforce users are creating ISM Policies which adhere to proper replica count as per their allocation attributes
What solution would you like?
Validation in Policy Creation path to make sure that replica count  is set appropriately.
What alternatives have you considered?
An alternate is not to do anything at the time of ISM policy creation . This will lead to failure of execution of ReplicaCountAction at a later point of time. This will be a silent failure and user will need to check ISM logs to figure out what is wrong with the policy and then modify it appropriately.
Do you have any additional context?
Add any other context or screenshots about the feature request here.

As allocation attributes can change with time, ISM policies failing due to this setting seems unavoidable. When this task is picked up we need to make sure that we are able to uniquely identify these failures so they may be properly displayed to the user.
If I was managing my cluster and I was planning on adding a rack or area zone, I might want to modify or create new policies with the correct replica counts before rolling out the awareness attribute change. Validation at the time of policy creation/update would block users from this preemptive update. It still might be the best option, but we should consider this.

Validation in policy creation path won't help with existing policies that sets replica count.

An alternate is not to do anything at the time of ISM policy creation . This will lead to failure of execution of ReplicaCountAction at a later point of time. This will be a silent failure and user will need to check ISM logs to figure out what is wrong with the policy and then modify it appropriately.

Suppose set replica count API call fails when being executed, ISM should be able to catch the ValidationException here and surface it to customer through the explain API.

We are planning on a validation mechanism to let user check if the policy is going to fail. This replica enforcement could be one of the validations we want to onboard. So user doesn't have to wait until the action actually executed but can check preemptively.

Thanks @downsrob  and @bowenlan-amzn  for the review.

If I was managing my cluster and I was planning on adding a rack or area zone, I might want to modify or create new policies with the correct replica counts before rolling out the awareness attribute change. Validation at the time of policy creation/update would block users from this preemptive update. It still might be the best option, but we should consider this.

Agreed on that. To counter that, we can add a force flag to skip this validations .

Validation in policy creation path won't help with existing policies that sets replica count.

Yes, that is the caveat which will be called out . Even the OpenSearch change of replica enforcement applies only to newer indices and newer API calls .

We are planning on a validation mechanism to let user check if the policy is going to fail. This replica enforcement could be one of the validations we want to onboard. So user doesn't have to wait until the action actually executed but can check preemptively.

This sounds great. force flag  will make sense here then.  Is this actively being worked upon ? Replica Enforcement in OpenSearch is already in progress and is expected to be in for minor release . Do you think we can add it in now and move it to the validations framework later or vice versa ?

Yes, that is the caveat which will be called out . Even the OpenSearch change of replica enforcement applies only to newer indices and newer API calls .

Existing policy that sets replica count could be used to manage newer indices.
Not sure what's the newer API calls. In ISM, we are doing the replica change by updateSettings call.
https://github.com/opensearch-project/index-management/blob/main/src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/step/replicacount/AttemptReplicaCountStep.kt#L35-L36
For now, I suppose it could break after we made the enforcement change in above scenario: existing policy which sets replica to a number which will cause exception because of replica enforcement, and is used to manage newer indices. This is one thing we want to call out.

We are planning on a validation mechanism to let user check if the policy is going to fail. This replica enforcement could be one of the validations we want to onboard. So user doesn't have to wait until the action actually executed but can check preemptively.

This sounds great. force flag will make sense here then. Is this actively being worked upon ? Replica Enforcement in OpenSearch is already in progress and is expected to be in for minor release . Do you think we can add it in now and move it to the validations framework later or vice versa ?

This has just started recently by our intern. We don't have a release plan for this feature yet. As the project goes on, we can update the plan in our roadmap and link it here. I don't think it could catch the Replica Enforcement change in OpenSearch for the next minor release.

For the validation during policy creation time, we will discuss it with PMs and try to implement along with the Replica Enforcement change.

Hi @bowenlan-amzn ,

For the validation during policy creation time, we will discuss it with PMs and try to implement along with the Replica Enforcement change.

I can take this up and have a minimal policy validation framework to execute it. That will unblock the current use case which is targeting 2.2 release.
When the validation framework comes, this validation could then merge with it . Does this work ?


NullPointerException

in RVAdapter,
public static ElegantNumberButton button;
in MainActivity,
SubMenuRVAdapter.button.setNumber("0");
When I click Send button, I want to set ElegantNumberButton number "0" as a default. This ElegantNumberButton, findViewById come from RVAdapter.

The problem for you is in SubMenuRVAdapter. I don't exactly know what's happening unless I can see the Log or at least your code for SubMenuRv Adapter where you're calling ElegantNumberButton. I'd also advice you to not make the button as static. This doesn't initialize the object.


Working percent completed

This change is

Codecov Report
All modified lines are covered by tests :white_check_mark:

Files
Coverage Δ

src/Serval.Client/Client.g.cs
70.60% <ø> (ø)

...lation/Controllers/TranslationEnginesController.cs
91.43% <ø> (ø)

:loudspeaker: Thoughts on this report? Let us know!.


Issue#727 disable deleting

Added new services, class for storing constants, new Feature (TOPIC_DELETION) and FeatureService getAllowedFeatures instead Features getEnabledFeatures

Great refactoring! I guess ClusterUtil class is the next candidate.


Library published

Hey @NathanWalker!
Thanks for upgrading your library seed to Angular RC.
As promised, here's the library I built using your seed:
https://github.com/alexcastillo/ng2-notifications
https://www.npmjs.com/package/ng2-notifications
Do you have any feedback?
Thanks!

@alexcastillo Your plugin looks nice. Sry for long delayed reply. Just updated this seed to Angular 2 Final 👍