Refactor - Optimize JIT registers

Uses RDI (argument register 0) for REGISTER_PTR_TO_VM as a preparation for passing the encrypted VM pointer to BuiltinFunctions directly.

Codecov Report

Merging #534 (e45b16f) into main (31c8b6f) will decrease coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #534      +/-   ##
==========================================
- Coverage   89.72%   89.70%   -0.02%
==========================================
  Files          24       24
  Lines       10215    10213       -2
==========================================
- Hits         9165     9162       -3
- Misses       1050     1051       +1

Files
Coverage Δ

src/jit.rs
91.98% <100.00%> (-0.10%)
:arrow_down:


feat: Use labels on PVCs for better reconciling

What does this PR do?
Add new labels to indicate PVCs that are in use by Devworkspace Operator.
This allows to trigger workspace reconcile, that must be triggered upon PVC deletion.
and if it's a common PVC that had a name configured by external operator config, only those workspaces that would have the same PVC name should be reconciled
What issues does this PR fix or reference?
https://github.com/devfile/devworkspace-operator/issues/920
Is it tested? How?

PR Checklist

[ ] E2E tests pass (when PR is ready, comment /test v8-devworkspace-operator-e2e, v8-che-happy-path to trigger)

[ ] v8-devworkspace-operator-e2e: DevWorkspace e2e test
[ ] v8-che-happy-path: Happy path for verification integration with Che

@mkuznyetsov sorry about the failing CI tests, that's due to https://github.com/devfile/devworkspace-operator/issues/1242 (not related to your PR). I've opened https://github.com/devfile/devworkspace-operator/pull/1243 to resolve this.

@mkuznyetsov when you get a chance, please rebase your PR onto the main branch so that the Validate PR GH Action will pass btw :)

@mkuznyetsov I think this PR is good to merge :) Before we do so, can you squash your commits with a git rebase --autosquash please? I also think a705e11 (#1233) could be squashed into 08e12bc (#1233).
Additionally, the commit description of 08e12bc (#1233) could maybe be re-worded to something like: feat: label PVCs by storage strategy

Congrats on having your first PR merged to the project @mkuznyetsov :tada: Amazing work :)


make check fails on os x 10.8

Original issue 131 created by humdumdedum on 2012-11-15T15:42:17.000Z:
for t in arena_test bloom_test c_test cache_test coding_test corruption_test crc32c_test db_test dbformat_test env_test filename_test filter_block_test log_test memenv_test skiplist_test table_test version_edit_test version_set_test write_batch_test; do echo "***** Running $t"; ./$t || exit 1; done
***** Running arena_test
/bin/sh: line 1:  2447 Segmentation fault: 11  ./$t
make: *** [check] Error 1
Xcode: 4.5.2
CLT: <IP_ADDRESS>.1.1249367152
LLVM-GCC: build 2336
Clang: 4.1 build 421

BSD not a supported platform.


Added rotate check for setTransform function.

Since Leaflet doesn't support rotation of marker I doing it manualy by changing transform property of markers. But in case of zoom leaflet rewrites transform property of objects. And it doesn`t check if it has rotate in it. So it removes it by adding only translate and scale to new transform value.
Ive added regex to check if it has rotate in it to add it to the new value. In this case rotate wouldnt be losed.

I just don't like this approach. Running a regexp on every layer every time it's repositioned seems like it would spend a non-trivial amount of CPU time.
I would prefer something along the lines of:
export function setTransform(el, offset, scale, rotation) {

And then something like:
L.Marker.Rotated = L.Marker.extend({
  _setPos: function(pos) {
    /* possibly recalculate position based on the centre of rotation before this */
    L.DomUtil.setTransform(this._icon, pos, undefined, this.options.rotation);
  }
})

This increases the API surface (which is bad), but removes any use of regexps around (which is good).

I think you are right. As rotation maybe not needed for every layer, but only for points. Why I am not like solution with addidng one more API is because of scale. It is optional too. So in our case we need to overload the function twice. But I agree with you about regEx problem.
If you have some more ideas or decisions how to solve the problem of rotation - I will be very gratefull!

I closing this because regex is not performant and the other solution is coverd in #7140

Reopened as draft for sake of discussion.


feature: add readme.md in english

这个 PR 实现什么功能/修复什么问题:
增加英文README
是否需要 backport 到之前的 release 分支:
NONE

Codecov Report

Merging #1930 into master will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1930      +/-   ##
=========================================
- Coverage    7.51%    7.5%   -0.02%
=========================================
  Files         418     418
  Lines       64863   64863
=========================================
- Hits         4876    4865      -11
- Misses      59576   59586      +10
- Partials      411     412       +1

Flag
Coverage Δ

#aFlag
7.5% <ø> (-0.02%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/util/rbacutils/rbac.go
70.89% <0%> (-3.41%)
:arrow_down:

Continue to review full report at Codecov.

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

/area util

/approve
/lgtm


Add ability to pass grpc-js MetadataOptions to GrpcOptions in grpc-tr…

…ansport.

Released in v2.6.0


Hacktoberfest 2020 of Docker Intro and Project

@gurpreetsahni you can look into our  issues  present and make contributions ,for now I am closing this


bitcoin.conf, location on a MAC ?

Hi,
Where is the following bitcoin.conf file stored on a mac, I notice on the front page it gives the info of where i should find it on Windows but i currently use a mac.
thanks

It should be under
$HOME/Library/Application Support/Bitcoin/

See also: https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File.


Turn -Werror off by default

We shall turn -Werror off by default.
Signed-off-by: szalpal<EMAIL_ADDRESS>

CI MESSAGE: [3906504]: BUILD STARTED

CI MESSAGE: [3906504]: BUILD FAILED

CI MESSAGE: [3906504]: BUILD PASSED

@szalpal was this PR related to Clang13+ new warning flag causing errors when not handled: https://github.com/triton-inference-server/server/issues/4332

@rmccorm4 ,
Not really. I made this change because of two reasons:

I believe it is a general good practice to turn -Werror off by default. Looking from the perspective of The Project, that includes and builds My Project. Whenever any warning in My Project happens, for example because The Project uses different (older or newer) compiler version, of different compiler, or different version of the dependency of My Project, -Werror makes such warning break the compilation.
Following the first point here. There has been a brief period when libcudacxx introduced a warning in DALI, which propagated to the DALI Backend (the two latter share some parts of code). This unfortunately broke the Triton build, since Triton didn't knew about that warning. Turning -Werror off by default is the right thing to do here.

Still, it would be a good thing to turn -Werror on for the CI builds, which we actually do.


upgraded webpack to 4.41

Issue #29

Nice work! thank you for your contribution!

you're very welcome!


[Feature Request]: New sync algorithm

What feature are you suggesting?
Remotely Save recently got a new sync algorithm based off of Jwink3101/syncrclone.
I don't know enough to suggest a design but I think we should discuss the options including the one above.
I wouldn't mind trying to implement this but it should probably be more a collaborative thing since it's pretty big.
Trying to find patterns and figure out what we want out of it might be a good start.
What remote cloud services are you using, or suggesting adding the feature to?
No response
Ensure no sensitive information

[X] I ensure that no sensitive information is submitted in the issue.

I was looking at this a few weeks ago and I found this source here.
What I'd probably be looking for with this is improving the readability and sync times. At the moment the current way it syncs is super hard to follow, and I think the harder it is the follow the easier it is for bugs to get looked over.
I also found Rsync but it's old and single threaded and might not realte well. There are some interesting concepts I don't understand there though.

My thoughts:
I sincerely invite you directly contribute to Remotely Save, instead of maintaining an outdated fork now.
Retrospectively, Remotely {Secure,Sync} was developed because of the pause of development of Remotely Save, and the seek for better encryption. Both issues do not exist now.

Remotely Save is actively maintained and updated.
Remotely Save has better sync algorithm as of 0.4.10, as you said in this issue. It really took a few weeks of my work on researching, comparing, coding, testing, writing docs. Syncing is a hard problem by nature.
Remotely Save currently provides even better encryption method XSalsa20Poly1305 now as of 0.4.10. BTW, I really think the "vulnerability" or "improvement" comments were unfair.
PRs to Remotely Save are reviewed and may be merged now.
Remotely Save has fixed lots of bugs, including the bugs in old / new sync algorithm.
Remotely Save has added Lots of features.

I am confident to say that Remotely Save has better sync algorithm, more advanced encryption method, the same or more useful feature sets, the same development activity  now.
Please consider contribute back to the upstream. You are welcome.

I sincerely invite you directly contribute to Remotely Save, instead of maintaining an outdated fork now.

I'll have a look at Remotely Save and see what I could do. But I don't think there would be much I could contribute to in my opinion. I honestly might focus on my own personal projects for a while or even experiment with my own sync plugin from scratch since I want to learn more about it.
It depends on what @sboesen is going to do with this plugin as well. If he wants to make a new sync algorithm or not.

Thanks for the comment @fyears but I think you made a similar one previously and I'm not sure the situation has materially changed. Definitely agreed the encryption was not as weak as I thought before (didn't have a chance to test determinism, was based on code review and missed the parameter was only used for testing), corrected pretty much everywhere I've said this.
One comment I have is is AES has more eyes, which is (in the cryptography community) generally considered "more secure" - I would hesitate to call a newer less used - AES-GCM is considered industry standard.

What I'd probably be looking for with a new algorithm is improving the readability and sync times. At the moment the current way it syncs is super hard to follow, and I think the harder it is the follow the easier it is for bugs to get looked over.

@kadisonm 100% agreed. The sync algorithm is worth refactoring before further additions (like adding hashing, remote mtime, etc). Definitely interested in improving this in general but also short on time lately sadly :(

Definitely interested in improving this in general but also short on time lately sadly :(

That's alright don't stress. I've also been busy.
So here's my stance on things:
Remotely Save is a lot faster now, so for my personal vault I've switched over to it. Since it's something I use, I'll try to help improve it where I can.
As for Remotely Sync, I want to still contribute and maintain it until it becomes its own plugin. When the time comes I'll help develop a new sync alogrithm for it :)
I'll probably work on my own projects more plus school has also been busy so contributions might not be frequent.

That makes sense, glad to hear sync is faster! Could be worth opening some PRs to merge your contributions here upstream if that makes sense to you.
School is definitely the priority 😅


[T4A3][W15-B1] Lim Wei Jie

Ready for review

A further improvement would be to extract the exceptions to the base class (but the regex will need to be passed as well for the isValid method to stay working as it is.
Pay attention to the indentations!
Good job in adding method comments (they are very important).


Bulk updating components is faulty server-side

I've contacted Ali (Instatus) about the issue, they'll get back to me soon™
https://github.com/countr/status-page-cronjob/blob/1f78c621eb14cb97705fb13ac7de801422e64979/src/handlers/components.ts#L22-L23

Implemented a temporary fix in https://github.com/countr/status-page-cronjob/commit/399ad25b8d89e7dcc72b7615c16743414e27eb84 where it updates one by one.
Hopefully Ali will get back to me soon™ so we can implement the bulk update endpoint again instead.


Using other files instead of CSV as the solution file

Hi, I would like to know if it supports using files like JSON instead of CSV as the solution file.

Cool, I'm planning to use the competition module to host my own leaderboard competition and want to confirm some functionalities. By the way, I also want to ask, is it supported to use custom metrics that require additional Python packages (e.g. scipy) for evaluation?

yes. please see docs: hf.co/docs/competitons

However, I don't seem to find any instructions in the document on how to set up one's own environment (installing their own libraries) for generic competitions in https://huggingface.co/docs/competitions/en/custom_metric
Is it only supported by script competitions?

im not sure if i understand. what do you mean by custom environment?
custom metrics are supported for both

OK, what I mean is that I want to create a generic competition, and when customizing the metrics, I want to leverage some python packages(which need pip install..)  to assist in evaluating the answers.

use requirements.txt in the created repo.

Nice. Does this mean that the generic competition will install some dependencies listed in the dataset's requirements.txt before conducting the evaluation?

yes. please try and read docs. set up competiton, if something doesnt work, create issue here.
issues are not for confirming what works and what doesnt :)


some questings about highway-v0

Hello,thanks for this great project!! I encountered some problems when I was learning.
Firstly,I want to know, in HIGHWAY_V0 environment, how to limit the speed of the vehicle automatically generated by the system in the lane?
Then，I am confused about the way of the highway environment ends. I want to know what is the end sign of the highway environment under normal circumstances except a collision.
Thanks!

you could set the speed by editing line in highway_env.py, like# all other vehicles start at one speed
vehicle = other_vehicles_type.create_random(self.road, speed=10, spacing=1 / self.config["vehicles_density"])

or modify https://github.com/eleurent/highway-env/blob/453f84e6d69676555a0f93a3f814114a481237a1/highway_env/vehicle/kinematics.py#L25
check https://github.com/eleurent/highway-env/blob/453f84e6d69676555a0f93a3f814114a481237a1/highway_env/envs/highway_env.py#L104-L108

That's exactly right @KexianShen, thanks!

A big help！Thanks！


Cloud Upload folder?

cloud uploading can be slow depending on the tools you use.
JMM could do it i think while it hashes and syncs hash with the cache and clears out local space.
so normal folder, let JMM Hash and sync the hash.
upload the file (one file at a time?), check hash on upload completion.
if hash is correct then automatically delete local file to just have a cloud version.
on completion it should start an import on that cloud folder we uploaded too (moving it out of its source folder and so on)
this way we will not have to use slower tools to upload anime, do not have to wait for files to sync up if you are not in sync. and it would upload only one file at a time so it would clear local space alot quicker!

Hmm, believe or not upload to the cloud is not an easy task, the pipeline to do it right requires a lot of work, more on some cloud like amazon that do not support resume yet. Will think about when the cloud middleware has an stable upload, this feature at the first glance, its out of scope of the JMM, there is already tools to do just that.


Capture all page not working.

Capture all page not working.

Please test the last version, it should be fixed.


chore: prevent upgrades for 0.x dependencies (#2712)

Backport
This will backport the following commits from 2.x to 1.x:

chore: prevent upgrades for 0.x dependencies (#2712)

Questions ?
Please refer to the Backport tool documentation

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 2713

Questions ?
Please refer to the Backport tool documentation


Bugbash(private): common.lu is not showing up in editor or triggers, but it is on disk

Build: Private daily (Tai)
Scenario:

Use & import common.lu in dialog [import](.language-understanding/en-us/common.lu)
Import entry shows empty in editor, triggers are also empty
File on disk looks good.
This worked on 1.3.1 (no change in bot, just updated composer build).

@scheyal is this common.lu added manually by you, or generated by composer?
We will fix the file discovery issue, while at the same time can you try rename to common.en-us.lu? since it's in en-us folder?


Praat F0

Implement the Praat F0 algorithm. See func_PraatPitch
The complication here is that the Octave code actually opens the Praat application and uses Praat to make the calculations. While it'd be fine to do it this way from Python to start with, it might be nice/faster to port the algorithm that Praat uses to Python instead. This would be an interesting project for someone who has a good grasp on C++ (because that's what Praat is written in).
The Praat source code is available here

Here's the C++ implementation

For now, we're just going to run Praat scripts to get this measurement.  This requires the user to download the Praat binary executable and specify the path to this executable on their machine.  Most of the Praat F0 functionality was implemented in commits https://github.com/voicesauce/opensauce-python/commit/567bb751377356e99fec4d7da50949a0b76d3eae and https://github.com/voicesauce/opensauce-python/commit/4f06602116ed5ba89fb054a12c99c33e4d2abcd2


Fix dyld issue on macOS

Fixes #6
Replaces #7
@fasmat this clears up the issue for me. Could you give it a shot?

Assuming this works we should do the same in smcli

This does fix make test but imo it doesn't fix the underlying issue.
rpath is set incorrectly in spacemesh-sdk - it sets the lookup path for libed25519_bip32 in libspacemesh_remote_wallet to /Users/aviv/actions-runner/_work/spacemesh-sdk/spacemesh-sdk/target/aarch64-apple-darwin/release/deps/.
Imo instead of overwriting the path in smkeys and smcli (and every other user of the library) by setting DYLD_LIBRARY_PATH we could set the right rpath in the library itself.
Since we statically link the finished binary I'm OK with this change, but if it would be dynamically linked the application couldn't be started without setting the DYLD_LIBRARY_PATH explicitly which I think is prevented by System Integrity Protection on most systems?

See also https://blog.krzyzanowskim.com/2018/12/05/rpath-what/

Imo instead of overwriting the path in smkeys and smcli (and every other user of the library) by setting DYLD_LIBRARY_PATH we could set the right rpath in the library itself.

See comment here: https://github.com/spacemeshos/spacemesh-sdk/pull/5#issuecomment-1568804366
Basically, I don't think this is possible because we don't know the "right" rpath at build time. It's relative to the location of the dylib on this side when we run go build/test/....

The change did the trick, rpath is not pointing to /Users/aviv/actions-runner/_work/spacemesh-sdk/spacemesh-sdk/target/aarch64-apple-darwin/release/deps/ any more and can now be set using CGO_LDFLAGS instead of DYLD_LIBRARY_PATH.
See my comment here: https://github.com/spacemeshos/spacemesh-sdk/pull/5#discussion_r1210601572


[Retail React App V3] - Make Navigation Menus Lazy

TL;DR;
https://github.com/SalesforceCommerceCloud/pwa-kit/assets/8902581/36f87fea-9833-48ae-b7ba-c6e0c18bf029
Description
Before you start, go get a coffee ☕, it's a long read.
This PR makes both the mega menu and the mobile drawer menu lazy. This means that sub-categories are only loaded when the menu is interacted with. For example, we initially only load the top root category and its immediate children, then if one of those top level categories is expanded by means of hovering over, or tapping (or mobile), we will then fetch category data for the item acted upon.
The reason we are doing this is to increase performance by means of offloading tasks that would normally happen on application mount, resulting in additional TBT (total time blocking) as indicated by the lighthouse results in the #scores section below..

Lets step back an understand how the navigation menus work prior to this change. First the top most level of the categories are loaded, this is done by fetching the root category and getting its children via the levels=1 param. This is done on the server and the data is hydrated in the query cache on the client, then only on the browser do we get each individual category in a bulk manner with levels=2. This could be N fetches, but in our case it's 5 (new arrivals, mens, womens, gift certificats, top sellers). After these are fetched, they are combined and merged into the root.
The downside of this approach is that immediately when the application loads, we fire off 5  requests to get categories, and all their children, which is expensive especially on slower devices. Furthermore there are complexities of having the useBulk implementation in the template.
So what do we do now? Well, we still load the initial root as we did previously. This is because we want to render that top level of categories on the server and have them in html. But after that, we don't do anything until the user interacts with the menu(s).
When the user expands a menu, lets say the "mens" menu, we will at that point use the useCategories hook to get the mens category with it's children levels=1. Because that portion of the menu (lets call it the menu item or content) is responsible for only showing the children of a given category, it can load the category as it normally would, render a loader while it waits, and then once the data is returned, then it will render the sub-menu.
This make the solution a little less complex over all. No merging, no auto fetching on load. To ensure that we used the best practices of separation of concerns, the components responsible for rendering the navigation menus (DrawerMenu, and ListMenu) don't fetch the data themselves. Instead they can be passed a component via their props which is used as the sub-menu component. We use this pattern to wrap what would have been the default sub-menu, with one that has data. To do this I created the withCommecerSdkReact HOC that you use to wrap components with data from a commerce api hook.
Additional Changes
Aside form the code work of making navigation loading lazy, where are a couple changes I made in the PR that are listed below and my reason for doing them:

Extract Inline Components

The primary purpose of this is to make extensibility easier. For example, when we have multiple components listed per file it makes extensibility more error prone as you have to override the entire file and all the component, this makes those components that are untouched not upgradable.

Proper Index Files

Currently all or most of our components definitions are in an index file and not in a file that is named after the component with the addition of an index file. Having an index file will make overriding more flexible and is also allows use to follow a more clear pattern of all components having an index file, and the component implementations live in a file named after the component.

Don't render sub-menus unless they are open

As part of adding laziness to the menus we don't render the sub-menu until its opened, this means we can then trigger the data fetching on mount of the sub-menu. A positive outcome would be if someone was to use the nested accordion all the content isn't rendered and passed from the server to the client if the sub-menus are closed.

Render sub-menus on Product List Page

This this lazy menu loading, we somewhat break SEO crawlers due to our menu opening on mouse hover. This is compounded by the fact that our product list page doesn't show the current categories sub-categories stopping the crawler from making progress. So I've taken out the old categories refinement (which was someone confusing) and replaced it with the list of the categories sub-categories. This was accomplished by following a similar pattern in the NestedNavigation component were we inject component before the primary content but in the refinements component.
Scores
Methodology: The scores posted below are the result of running Chrome's Lighthouse Performance test, using the default settings in an incognito window 20 times. The fastest and slowest outliers were removed and an average was taken of the rest.
Home Page
Development: 1040ms
Current Branch: 543ms
47.7**%** decrease in TBT
Product List Page
Development: 2695ms
Current Branch: 2034ms
24.5**%** decrease in TBT
What is left to do?

We are waiting on API changes to the Shopper Products API family. The upcoming change will allow us to know if a category has children without having to return the children. This is especially useful when implementing a lazy menu so we can render appropriate html elements that communicate that the menu item has children. Once this change lands we can make a small modification the the code to use that new property

The box shadow isn't rendering on the desktop list menu unless you open it a second time. I'm looking in to this, but open for ideas if you know what is going on.

Types of Changes

[ ] Bug fix (non-breaking change that fixes an issue)
[x] New feature (non-breaking change that adds functionality)
[ ] Documentation update
[x] Breaking change (could cause existing functionality to not work as expected)
[ ] Other changes (non-breaking changes that does not fit any of the above)

Breaking changes include:

ListMenu and Drawer menu are lazy loading by default
Changes to file/folder structure

Changes

Add new HOC to allow fetching for commerce sdk data and adding menus inner components
Lazy load category on mount.

How to Test-Drive This PR

Visit deployed retail app here --> https://scaffold-pwa-lh-performance-v2.mobify-storefront.com/
Play with the menu for mobile and desktop. Notice that categories are loaded on demand.

Checklists

General

[x] Changes are covered by test cases
[x] CHANGELOG.md updated with a short description of changes (not required for documentation updates)

Accessibility Compliance
You must check off all items in one of the follow two lists:

[ ] There are no changes to UI

or...

[ ] Changes were tested with a Screen Reader (iOS VoiceOver or Android Talkback) and had no issues
[ ] Changes comply with WCAG 2.0 guidelines levels A and AA
[ ] Changes to common UI patterns and interactions comply with WAI-ARIA best practices

Localization

[ ] Changes include a UI text update in the Retail React App (which requires translation)

How were the lighthouse tests run? It sounds like they ran locally. If yes, can we try running them with webpagetest? Curious what the result would be on different hardware and internet connection.

webpagetest

You right. They were tested in lighthouse locally, but running code that was pushed to production like environments.
I ran the same product detail page on webpagetest.org and got some noticeable results with total blocking time as well.
Before
https://www.webpagetest.org/result/240209_BiDc76_GQF/
After
https://www.webpagetest.org/result/240209_BiDcQR_GQH/

On caching: we cache the category data on the client side via react-query. After the page refreshes, the PWA needs to fetch them again. Can we cache the data on the server-side (API-level) too?
The doc on proxy caching suggests to use this Server-Side Web-Tier Caching instead. I've verified that our sandbox has the feature enabled but still it does not behave as I expected it to.

On caching: we cache the category data on the client side via react-query. After the page refreshes, the PWA needs to fetch them again. Can we cache the data on the server-side (API-level) too?
The doc on proxy caching suggests to use this Server-Side Web-Tier Caching instead. I've verified that our sandbox has the feature enabled but still it does not behave as I expected it to.

Can you elaborate on that a little? yes react-query caches as expected and in fact if you let the browser sit long enough the cache will expire and if you open a menu it will fetch again. I think there is actually something I can change,which is to preserve the cache while fetching so I never see a spinner again.
But I'm not sure what you mean by wanting to cache data on the server side? Is that something that we were previously doing, or is it another enhancement?

On desktop UI: the last 2 categories do not have children, but the those items show the chevron-down icon.

I don't know what to suggest here specifically. But how can we improve them? 🤔

What is left to do?

In the What is left to do? section I mention that we are waiting on an API change. Essentially the category returned from ShopperProducts getCategory will return the number of children categories even if you pass in levels:0 .. this way we can use that information to know if it's a leaf or parent and render the trigger appropriately.

But I'm not sure what you mean by wanting to cache data on the server side? Is that something that we were previously doing, or is it another enhancement?

It's for another enhancement... another layer of caching. Maybe server-side is not the correct term. But what if the browser also caches the API responses for those categories? Categories do not typically change often. Let's say I refresh the homepage the next day... it'd be great if the app does not need to refetch the categories from the API.


How to setup and use the package?

hi, greetings, may i know if i can find a documentation about how the package works and helps me create invoices and things like, i cant find installation docs or any guidelines thanks

Hello Yasir,
unfortunately the package has been developed mainly for your own use, so there is no documentation.
Furthermore, I would advise you not to use this package as it is no longer developed/maintained. Sorry!
But I would recommend you to have a look here:
https://github.com/Baebeca-Solutions/lexoffice-php-api/blob/master/lexoffice-php-api.php
My package is based on the script from Baebeca-Solutions.
Kind regards


[BUG] $clientOpt argument in sendAttachment used only for requestMultipart, not for requestJson

Nutgram version
4.19
PHP version
8.2
Framework
Laravel
Cache driver
Laravel+Redis
OS
Win
Dev environment
No response
Describe the bug
\SergiX44\Nutgram\Telegram\Client@sendAttachment
        if (is_resource($value) || $value instanceof InputFile) {
            ...
            return $this->requestMultipart($endpoint, [...$required, ...$opt], Message::class, $clientOpt);
        }

        return $this->requestJson($endpoint, [...$required, ...$opt], Message::class);

Options for Guzzle Client can't be set.
For example, set request timeout for sendPhoto with url (string param).
i think requestJson method also should accept $clientOpt param
To Reproduce
$bot->sendPhoto(
    $url,
    chat_id: $chatId,
    clientOpt: [
        'timeout' => 25
    ]
);

Expected behavior
Guzzle waits 25 sec instead 5 sec
Screenshots
No response
Additional context
No response

You can change this parameter via Nutgram Configuration:
https://nutgram.dev/docs/configuration/installation#clienttimeout


allow configuring path to eslint config for working directories

Hi,
I have a unique use case where I have many components in my root folder, each one of these components has its own lint configuration located somewhere else (somewhere in the node_modules) let's say.
Some of the components are using the same eslint config, but I might have let's say 100 components that use 10 different eslint configs in the same project.
One solution is to create on each one of the components a eslint config which extends the real config from the node_modules, but this will make my entire project full of eslint config everywhere.
I wish to have a way, to configure for each working directory a path to its eslint config.
Something like (hasn't thought the nameing through):
"eslint.workingDirectories": [
  {
    "workingDirPath": "./component-1",
    "configPath": "node_modules/eslint1/eslintrc"
  },
  {
    "workingDirPath": "./component-2",
    "configPath": "node_modules/eslint2/eslintrc"
  }
]

Even better, will be a way to provide for specific config all the working dir that should use it.
something like:
"eslint.workingDirectories": [
  {
    "configPath": "node_modules/eslint1/eslintrc",
    "workingDirPaths": ["./component-1", "./component-3", "./other-components/**"],
  },
  {
    "configPath": "node_modules/eslint2/eslintrc",
    "workingDirPaths": ["./component-2", "./component-4"],
  }
]

Thanks!

The feature has not gain any traction in the community. I therefore close the issue. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Use connection request v2 spec

Resolves #296.  Work in progress, not quite there yet, etc.  Updates in comments below.

The POST /connection controller must be able to receive the new connection requests in order to generate connection IDs.  But validation of the request body happens before it hits the controller method, so in order to accept v2 format connection requests, the OpenAPI/Swagger definition must change. That might break a few things.
It is not quite clear to me if we should maintain backward compatibility with the original connection request format.  If we want to maintain backward compatibility at least for a while, we will probably have to add a new endpoint to handle connection requests in v2 format?

@sajith adding a new /connection/v2 endpoint is probably a good idea, so no need to overhaul all the unittests for the time being? in the swagger.yaml in sdx_lc, I've added the new request connection scheme there.

@YufengXin A simpler solution might be to use oneOf, like so:
  /connection:
    post:
      operationId: place_connection
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/connection'
                - $ref: '#/components/schemas/connection_v2'
        required: true

Now I need to figure out how to write a connection_v2 schema.  I tried converting Connection.json to YAML and using that in the OpenAPI spec (using an online tool), but that does not pass connexion's validator.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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 52.322%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
758

Relevant Lines:
1473

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 52.486%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
763

Relevant Lines:
1478

💛  - Coveralls

@YufengXin @congwang09 I'm keeping this in draft state since this uses code that is not in the main branches of pce and datamodel, but please take a look when you get a chance.
The example connection request does not find a path. However we do generate a connection ID when it is not present (as in the case of v2 connection requests), and send a response like below, and a non-200 response code:
{
  "connection_id": "7e84c036-cc65-4257-9049-9b70992e8057",
  "reason": "Could not generate a traffic matrix",
  "status": "Failure"
}

The modification looks good to me -:)
For the unittest, in the draft PR in PCE,the test I added is this one:
https://github.com/atlanticwave-sdx/pce/blob/052788738691de677786b4c1bc496bafcb4a9043/tests/test_te_manager.py#L947
that uses this request connection in v2 format:
tests/data/test_request-amlight_zaoxi-p2p-v2.json
which finds the path on the three-topology

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 52.486%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
763

Relevant Lines:
1478

💛  - Coveralls

It would be useful to move tests/data/test_request-amlight_zaoxi-p2p-v2.json from pce to datamodel src/sdx_datamodel/data/requests/ so that we can use it here, eventually.
However, for the purpose of the issue (namely, generating a connection ID), I think the newly added test should be sufficient.

made a copy to the datamodel repo:
https://github.com/atlanticwave-sdx/datamodel/blob/130-conform-to-request-data-model-spec-20/src/sdx_datamodel/data/requests/test_request-amlight_zaoxi-p2p-v2.json

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 52.486%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
763

Relevant Lines:
1478

💛  - Coveralls

Ok, added a test that finds a solution.
Note that sdx-pce @ git+https://github.com/atlanticwave-sdx/pce@2a4dbb7 refers to a pce branch that I just pushed, just for testing.  We'll need to bump up datamodel and then pce so that we can "properly" use the newest connection request file that was added to datamodel.

Cool! Now that the two tests worked, would you mind/have time to merge the PRs to main properly across the 4 repos with the right pointers in project files? -:)
Otherwise I'll do it early next Monday.
Cong would work on the test and I'll fix next week if these merges break anything

Well, as long as you don't mind dealing with the fallout... Let me see how much I can get done today. :-)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 52.486%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
763

Relevant Lines:
1478

💛  - Coveralls

@YufengXin @congwang09 I went ahead and merged https://github.com/atlanticwave-sdx/datamodel/pull/131 and https://github.com/atlanticwave-sdx/pce/pull/195.  Leaving https://github.com/atlanticwave-sdx/sdx-lc/pull/156 alone for now because I have some comments there.
Ok, now you get to deal with the fallout from the above merges, while I get to do the main thing I've got to do. For a while anyway. ;-)

This should probably wait for @congwang09. :-)


Memory Occupancy

Thank you for your work. Could you let me know how much memory will be required for running the VP fine-tuning task? It seems that my 3090 might not meet the requirements.

Hi, hxhebit.
Fine-tuning llama2-7b on the VP tasks requires ~30GB memory. So you may try fine-tuning on a more powerful gpu or two 3090.

Hi, hxhebit. Fine-tuning llama2-7b on the VP tasks requires ~30GB memory. So you may try fine-tuning on a more powerful gpu or two 3090.

Thanks for your reply! Does this project support splitting a single model onto multiple GPUs for fine-tuning? Or do I need to make some modifications to it?

Hi, hxhebit. Fine-tuning llama2-7b on the VP tasks requires ~30GB memory. So you may try fine-tuning on a more powerful gpu or two 3090.

Thanks for your reply! Does this project support splitting a single model onto multiple GPUs for fine-tuning? Or do I need to make some modifications to it?

It works when I set the  and .


interface doc update

Added info about the push to HF hub args in the interface doc.
@clefourrier @NathanHB

@KonradSzafer if you resolve merge conflicts then we're good to go!

@haileyschoelkopf ready!


uni tests / CI

We should check how we could test graphpack using Travis CI.

@DanielRuf Would you mind set up some initials tests & a minimal CI setup in a PR?

Which testing framework should we use?
tap, jest, mocha or any other?

I personally use jest


embed youtube playlist to our about page

this playlist:
https://www.youtube.com/watch?v=MJZrIxjQEH8&list=PL6Rh06rT7uiX1AQE-lm55hy-seL3idx3T&ab_channel=הסדנאלידעציבורי
could be embedded right after the first paragraph of the about page:

Hey I'll take it

hi i saw that there is no progress in this issue can i take it?

@RoeezLevi sure! thanks

hi can i take this?

@msgewendim sure!


"Unable to find resource"

What are the minimum necessary steps to reproduce this issue?

Build the app on current ubuntu like described in readme.

What happens?
On startup i see messages
Unable to find stylesheet
Unable to find resource inbox.png
(and 6 other pngs)
I see the bin in effitask/target/release, and i see the resource files in effitask/resources.

Sorry, the documentation was ambiguous. After the installation, you should execute /usr/bin/effitask.
If you want to test it from source, you could simply execute cargo run.
I updated the README, fell free to reopen the issue if it’s still unclear.

Uuups, i maybe forgot a maybe important circumstance: I compiled it in my userland dir and want to execute it there. Maybe this boils down to an issue like "How do i install without sudo".
(Looks like i can not reopen)

I updated the Makefile, now you can do:
 make install PREFIX=$HOME/.local/

The files will be installed in ~/.local/bin (add it to your PATH) and ~/.local/share, the default value for XDG_DATA_HOME variable where the program looks for assets.

Yeah thanks this works and now i see shiny buttons!


Pin version of ltag for go <= v1.15 compatibility

Signed-off-by: Mathis Joffre<EMAIL_ADDRESS>Issue #, if available: #364
Sorry for multiple PR opening I had some troubles with my branches and squashing. This the final PR for this issue.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I think it is the best option I will made changes, plus we should consider to pin a version for each dependency to avoid situation like this one.


Message to be displayed if the word doesn't exist

I have tried to return None from the method where 'Nonetype isn't iterable' error was being shown.

Can you be a bit more clear about what you mean by "word doesn't exist"?
Does this mean that a word which doesn't exist in the API dictionary?
Also, can you share what would like to be displayed when the user enters such a word?

Yeah, for the words which doesn't exist in the API dictionary. "Word doesn't exist. Please check the spelling." can be displayed.

Changed the spaces. How about this?

You should always test your changes before committing.
Generally, most projects have a test suite which assures that nothing breaks.
However, we currently do not have one.
Here is how you can test the changes manually:
From the base folder of the project:
$ pip3 install -e .
This will install the package in development mode and track all the changes you make.
Now, you can manually try commands which test your fixes.
For example, in this case you can try to enter wrong words and see if the message is displayed.

Updates @KeerthanBhat

I'm trying to debug my error. Couldn't do much from 3-4 days since my exams have started.
I will surely fix this patch and submit new patches post 21st.

Thanks for the heads up.
Do remember to fill up the midterm evaluation by tomorrow.

pip3 install -e is showing errors. Typed this from base directory itself.

Try: pip3 install -e . ; Dont forget the dot '.'
Also, does pip3 refer to the Python3 package installer?
Try $which pip3 and try to debug the error you are getting.

Okay. Got it. Thanks.
What features do we get in development mode?
Why don't we get the error while not using the development mode?

In development mode, all the changes you make to the source code are reflected in the command.
Try adding couple of print statements in the lexico function of the cli.py module.
You will be able to figure it out from then on.


Reduce cost for repeated accesses

Tell us more about this new feature.
After reading a file (or a portion of it) using Mountpoint for Amazon S3, customers want to keep the data on their compute instance for a configurable amount of time. With this enhancement, Mountpoint will make fewer GET requests to Amazon S3 when customers repeatedly access the same file data.

Local file caching would make a huge performance gain in our workflows, where we access the same file dozens or hundreds of times in some cases. Currently I switch to s3fs when I need to run these workflows.

Additionally, I wonder if it would be possible to provide a parameter to avoid re-listing the bucket once done once. This is a costly operation and can lead to slower training.

Hey Thomas, would you be able to give a little more detail here on the access pattern? Maybe a short example code?
I'm wondering if the cost you're referring to is caused by some explicit call like os.listdir(path) or to the ListObjectsV2 and HeadObject performed when opening individual files.
Either way, I see why listing the bucket/prefix up front and storing the results would help both of these cases.

Hey @dannycjones,
Yes, let's assume the dataset doesn't change through time and it is used in read-only mode. Right now, everytime I am listing ImageNet from python (~1.2M files), it takes 300 seconds.
Here are 2 additional things I wish to have on top of the possibility to cache the files locally:

Keep the list of files in RAM or within a file when listed once e.g the second time I list from python, it is as fast as listing locally

Some python utilities to fast list a bucket folder by recursively listing sub-folders in parallel.

On-going work on this issue is being integrated behind the build-time feature flag caching.
https://github.com/awslabs/mountpoint-s3/blob/fa0d516ccb71c09881ef4e87fd87b396853b1a00/mountpoint-s3/Cargo.toml#L64-L66

@dannycjones What are the steps to compile it with the feature flag ?

@dannycjones What are the steps to compile it with the feature flag ?

https://github.com/awslabs/mountpoint-s3/blob/main/doc/INSTALL.md#building-mountpoint-for-amazon-s3-from-source
and I think step 4 should be changed from
cargo build --release
to
cargo build --release --features "caching"
if I'm reading the cargo features page correctly.

@dannycjones What are the steps to compile it with the feature flag ?

https://github.com/awslabs/mountpoint-s3/blob/main/doc/INSTALL.md#building-mountpoint-for-amazon-s3-from-source
and I think step 4 should be changed from cargo build --release to cargo build --release --features "caching" if I'm reading the cargo features page correctly.

Exactly this. When running cargo commands (Rust's build system), you can add --features "caching" such as during builds above. We're explicitly trying to limit the differences when building with this flag at the moment, so the main difference is that the CLI arguments for enabling the cache are hidden when the caching flag is not provided.

Cool @dannycjones. I will give it a try next week.

Hey @dannycjones. Going to bump it today and run heavy stress test over it for the next week. I will ping you if we find anything.

Hey @dannycjones. Going to bump it today and run heavy stress test over it for the next week. I will ping you if we find anything.

I'm planning to update the default metadata cache TTL to 1 second or a similar short value, so that it suits general purpose workloads.
I'd recommend pinning the metadata cache TTL to a value that suits your workload (using --metadata-cache-ttl <SECONDS>). Since its ML training and we don't expect objects in the prefix to change during training, a value that exceeds the expected duration of training sounds about right.

I'd recommend pinning the metadata cache TTL to a value that suits your workload (using --metadata-cache-ttl <SECONDS>).

For those following this thread and compiling from the main branch (like me), it looks like this parameter has changed to --metadata-ttl in https://github.com/awslabs/mountpoint-s3/commit/7d38be79f3a41ad7c60539be027790c3c553a94c#diff-dc57c703340f88ddb4eab99dd8d870135117972f0f323c0a57b22a3f803b99ffL241
I'm excited to give this another try with a bucket that has 1000s of files in it.

Cool, I will try that.

You will also need to specify --cache <DIR> to enable caching (both object metadata and content), in addition to --metadata-ttl <SECONDS>.
As noted above, both options are currently only available when building with the --features "caching" flag. You can find an early draft of the documentation in #587 .

Support for caching is now available in Mountpoint 1.2.0

See updated docs for help configuring the cache.

Hey @dannycjones @passaro. After a week of heavy testing, it appears mountpoints3 is more flaky than other open source solutions. We are seeing a ratio of 7/10 failures in our heavy benchmarks with transport errors. I will update you with more details when we validate this isn't coming from us.


Sphynx

WIP update to add sphinx documentation site.

Codecov Report

Merging #100 into master will increase coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #100      +/-   ##
==========================================
+ Coverage   97.41%   97.46%   +0.05%
==========================================
  Files          33       33
  Lines        1545     1581      +36
==========================================
+ Hits         1505     1541      +36
  Misses         40       40

Impacted Files
Coverage Δ

fooof/fit.py
96.55% <ø> (ø)
:arrow_up:

fooof/synth.py
97.82% <0%> (+1.39%)
:arrow_up:

Continue to review full report at Codecov.

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


Fix prisoner number validation errors

Users are occassionally adding trailing spaces to otherwise valid
numbers, this causes the prisoner step to fail. I've added a pre
validation hook to the model to strip leading and trailing spaces from
the prisoner number to prevent this from happening.

This is inconsistent with the way @alan implemented email stripping (https://github.com/ministryofjustice/prison-visits-2/blob/master/app/models/visitors_step.rb#L30-L32). I think we should be consistent.

I was thinking about this too.
I wonder if we'd be better off implementing a more generic solution like PVB1 does stripping all whitespace from any parameter that can be stripped. I can't think of any parameter for pvb that we'd want to keep leading / trailing whitespace


⚠ Bofrost.lu has degraded performance

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

HTTP code: 200
Response time: 1730 ms

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


Integration with Hypothes.is

Hypothes.is allows people to annotate into documents and web-pages. It's basically a database linked with a url's DOM element. The data should be available in open access, so we should be able to use their API to gather this information.

There is also a website called Genuis that has a web annotator. I'm not sure if it is in open access.


Mast: Watch [Ss]earch\s[Ee]ngine\s[Mm]arketing

Mast requests the watch of the watch_keyword [Ss]earch\s[Ee]ngine\s[Mm]arketing. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

[Ss]earch\s[Ee]ngine\s[Mm]arketing has been seen in 27 true positives, 1 false positive, and 0 NAAs.

Rejected by Makyen in Charcoal HQ. Reason: 'Ignore case is already specified'


Permission Enum in Version 4.0.1 Beta is not Backwards compatible

I updated the Permission.Plugin to the newest Beta Version 4.0.1 Beta in a Project that uses Xam.Plugin.Media than when I wanted to Take a picture a Permission.Contacts Permission was requested instead of a Permission.Camera Permission.
I downgraded the Permission.Plugin to <IP_ADDRESS> and taking a picture worked again.
I think because in the newer Version some Enums where removed, the enum values changed. And so instead of Camera it requests Contacts.
Bug Information
Version Number of Plugin: 4.0.1-Beta
Device Tested On: Samsung SM-T580
Simulator Tested On:
Version of VS: Visual Studio 2017 15.8.8
Version of Xamarin: <IP_ADDRESS>2540
Versions of other things you are using:
Xam.Plugin.Media <IP_ADDRESS>
Steps to reproduce the Behavior

Create Xamarin Forms project with Permission.plugin and Xam.Plugin.Media
Update Permission.Plugin to beta version

Expected Behavior
Permission for using Camera is requested.
Actual Behavior
Permission for using Contacts is requested.
Code snippet
var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions
{
        SaveToAlbum = true,
        CompressionQuality = quality,
        CustomPhotoSize = 50,
        PhotoSize = PhotoSize.MaxWidthHeight,
        MaxWidthHeight = 2000,
        DefaultCamera = CameraDevice.Rear,
}).ConfigureAwait(true);

Screenshots

This is known currently and I am going to adjust some thing in the next release. Please don't use it yet.

Fixing in next beta


Turbografx 16

Some games make adapter freak out and drop controller,  it won’t sink up to anything until after you get past the troubled area..  might and magic 3 at player setup, power drift at player setup, outrun at music select then after game finally goes it works then flakes out are a few examples.  I’m using latest firmware ,  also using it in conjunction with the super hd system 3 pro

Issue reproduceble, will investigate later this fall.

Any chance on seeing the issue?

Has any progress been made with this issue? I’ve seen it myself with several different games on SuperGrafx hardware via a Turbo Everdrive Pro in my testing in the past few days.
The most recent games I’ve found the issue with are the two Sherlock Holmes: Consulting Detective games in which the issue will present itself upon attempting to load any spoken dialogue. Once the issue hits the dialogue will be skipped entirely while the adapter will reset itself and drop the paired controller. Once repairing the controller the game will work as intended until another selection is made then the whole string of issues will repeat.
One final thing I’ve noticed that might be unrelated to the issue itself is that while the majority of CD based games will not let you access an in game menu for the Everdrive via button combo all the games I’ve experienced this issue with will and through a full version of the menu as if the disc image is being read as card based media.


PrettyPrinter and CommandLineState arguments

Most of the commands that take a PrettyPrinter argument actually take that argument implicitly (that is, this argument is not provided by the end-user). For example, the type of ruleToLemma :: PrettyPrinter -> RuleName -> Transform LCore Doc indicates that it takes a PrettyPrinter, but if we look at the HERMIT help:
rule-to-lemma :: RuleName -> TransformLCoreDocH                             []
  Create a lemma from a GHC RULE.

I believe the only exception to this is dump-lemma (which does take a PrettyPrinter from the user). We should remove these PrettyPrinter arguments on the client-side and figure out how to correctly handle them on the server-side.
It looks like CommandLineState is the same way. possible-rewrites is an example of that. I'm not sure any other commands use CommandLineState, actually.

So this relates to the conversation we were having the other day about using HERMIT pretty-printers to debug things.
Remember the liftPrettyH function I pointed out to you?
Its abbreviated type is Transform PrettyC HermitM a b -> Transform HermitC HermitM a b, meaning it lifts a transformation that uses a pretty-printer context to be a transformation that uses a HERMIT context.
In order to do this, liftPrettyH needs access to a PrettyOptions value, either using the Default value (which is what I did to debug things) or a value extracted from a pretty-printer using the pOptions field accessor.
This is why ruleToLemma needs access to a PrettyPrinter value.
Now the reason we don't actually have to provide one is because the current PrettyPrinter is carried by the shell state.
The method provideState from the interpreter should automatically handle things for us as long as the externals we define have PrettyPrinter as the first argument. i.e. they must be of type PrettyPrinter -> a.
The same thing goes for commands that rely on the CommandLineState.
I'm going to go ahead and close this issue for now, but feel free to reopen it if things are not acting as they should.

On second thought, I'm going to reopen the issue until we actually test to make sure these commands work.
@andygill, how does the new shell interact with provideState?  Will it provide a value for a PrettyPrinter from its state before it tries to retrieve arguments from the transmitted JSON values, or does it do things the other way around?

After some limited testing and code review, I think I've concluded that our shell lacks an analogue to the provideState function.
I'm not sure what the best way to solve this problem is.  If I understand things correctly, the shell state, including the current pretty-printer, is stored server-side so that it can be modified by effects such as setPP.
I assume that means we want to retrieve the pretty-printer value after transmitting the ruleToLemma command.
How do we do this?
Do we want to make a new version of ruleToLemma that is a monadic shell effect instead of a transformation?

One thing about this that confuses me a bit is whether or not we should expose PrettyPrinter at all (even opaquely) on the client-side. I could have sworn I saw something that takes an actual, explicit PrettyPrinter argument, but now can't find it... Maybe I was just seeing things. @andygill I think that you said you had a particular plan about how you want this aspect of the system to work. What do you think?

Evan's summary of PrettyPrinter/CommandLineState arguments above is accurate. When they are the first argument, they get treated specially by the interpreter, and the current pretty printer or state is provided implicitly. This allows rewrites to have access to state without altering the "pure" type signature of the external, meaning they can be composed with other rewrites/etc.
However, when they are not the first argument, then they must be supplied. The only example I can think of are the dump commands, though set-pp should also work that way. It still takes a String because that allowed me to give a better error message, if I remember correctly. The idea of exposing the pretty printers themselves as externals occurred to me fairly recently, so it hasn't been propagated through all the various externals it could probably apply to.
For your purposes, I would assume that the client side would have some command fooC :: a -> Rewrite b that would correspond to either fooS :: PrettyPrinter -> a -> Rewrite b or fooS2 :: MonadReader PrettyPrinter m => a -> m (Rewrite b) on the server.
An (untried thus far) alternative might be to give reader access to the shell/pp state in the HermitM monad. To do this without inducing a dependency on the shell would require an extra type parameter to HermitM and likely Kernel, which would be pretty pervasive (and is why I didn't try it).

So after a bit more talking with Andy, I think we're going to use this as a motivating example for binding return values from the server in the client.  I think a fairly minor change to ShellEffect to give it kind * -> * will allow us add a constructor like CLSGet :: FromJSON a => CLT IO a -> ShellEffect a.
This will let us retrieve the server's PrettyPrinter on the client side and is a good first step towards the more general notion of the Return constructor we will likely eventually want.
I have yet to see if this will have a major impact anywhere beyond the performShellEffect method, so if anyone has any insights on that I'm all ears.

I've added a getPP command to hermit-shell which will retrieve the PrettyPrinter value from the server.
Eventually we will want to move PrettyPrinter information client-side, but for now this is a decent enough work around to close this ticket.


Add test for changed made in PR #1295

Add test for changed made in PR #1295
Description
Add test to the fix proposed in PR #1295
Status

done, ready for review

Checklist (tick everything that applies)

[x] Code linting (required, can be done after the PR checks)
[ ] Documentation
[x] Tests
[ ] ICLA (required for bigger changes)

Codecov Report

Merging #1299 into trunk will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##            trunk    #1299      +/-   ##
==========================================
+ Coverage   85.95%   85.95%   +<.01%
==========================================
  Files         359      359
  Lines       73920    73924       +4
  Branches     6708     6708
==========================================
+ Hits        63535    63543       +8
+ Misses       7701     7698       -3
+ Partials     2684     2683       -1

Impacted Files
Coverage Δ

libcloud/test/compute/test_openstack.py
94.9% <100%> (+0.01%)
:arrow_up:

libcloud/test/compute/test_ec2.py
97.9% <0%> (+0.16%)
:arrow_up:

libcloud/test/compute/test_upcloud.py
91.39% <0%> (+1.32%)
:arrow_up:

Continue to review full report at Codecov.

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

Merged, thanks.


Update VDA5050_EN.md - Fix typo AVG -> AGV

Fix typo AVG -> AGV

could you please create a pr from the dev/2.0.1 to the same branch back?

in dev/2.0.1 it is already fixed


Remote: hidden view can not be brought back

Vscode insiders, install remote SSH extension
Open the Remote view container
Hide all the views via context menu
Context menu on the title -> the views are not there and they can not be brought back 🐛
Reload -> the views are back -> I would expect the hidden state to be preserved 🐛

fyi @alexr00

Assigning to @alexr00 as remote viewlet has special treatment.

Original decision was that none of the views in the filter-view should be hide-able. Looks like I missed a spot!


Deprecate this repo

You should add a big bold link to the new joint repo in the README

Could you provide the link? ^^

This Repo is deprecated?
Please share your information.

https://github.com/bootstrap-wysiwyg/bootstrap3-wysiwyg

Sorry. Always thought I've already done that. I will do it ASAP.


Tooltip descriptions for pattern names

I am currently thinking that having shorter pattern names would be desirable.
I also think having a more detailed description of how they would work be nice.
My thoughts as to how to solve this are to put them in the table with short names, and on hover or tap on mobile they should explain what happens in longer words.

My proposed pattern names:

Fluctuating
Small spike
Decreasing
Large spike

@theRTC204 and I were just discussing that on #34.
I agree, I like the shorter names for readability/quick user parsing, and a hover over or legend to break it down to still have the relation to the game code.

How do the proposed names map to the actual patterns? Would the following mapping be what you are thinking?
PATTERN 0: high, decreasing, high, decreasing, high -> Fluctuating
PATTERN 1: decreasing middle, high spike, random low -> Large spike
PATTERN 2: consistently decreasing -> Decreasing
PATTERN 3: decreasing, spike, decreasing -> Small spike

Yup, that's exactly right

I like this idea! I think there is a lot of user confusion caused by the names from the game, so having simpler names and more clear descriptions of their behavior seems like a good idea.
It might be of some value to at least keep the names from the games somewhere, for people who may be using this tool along with other tools that are based on Ninji's extracted code.

should we include them in a data-attribute to keep the relation? would make it easy to parse for others if they need to.

I like the proposed names. I've been looking through the code trying to troubleshoot https://github.com/mikebryant/ac-nh-turnip-prices/issues/40, but I keep getting a little lost with the data-mined names.

This issue can probably be closed @mikebryant, since the names have already been changed in https://github.com/mikebryant/ac-nh-turnip-prices/pull/42.

Names, yes, but I still want too add more detailed descriptions in a tooltip type thing

I like this idea of presenting more information about different types of fluctuations, although placing it inside a tooltip feels a bit like obscuring the UX - the info will only be revealed for one tooltip at a time as the user hovers over a radio button.
Something like this could be feasible, where the information is presented beneath each button. although translations would need to be added for each of the already provided languages.

I have to admit I was originally apprehensive about the idea of using our own naming for the patterns, instead of sticking to the names extracted from the code; however the truth is those names will only have meaning to people who have studied the game code.
We landed on using a tooltip because it will give us a space to include a more natural language explanation of the behaviors of each pattern.


nginx timeout when exporting large project via POST /api/projects/{project_id}/exports

Describe the bug
We experienced nginx timeout errors when using the recommended export snapshot API to export a large project.
The POST /api/projects/{project_id}/exports API succeeded for this large project prior to the 1.12.0 update.
The project has ~18000 tasks, ~25000 annotations, and each task has ~2kb of data. The size of the project's JSON export is ~110MB.
The nginx timeout errors have the following form:
2024/05/02 13:22:03 [warn] 21#21: *173314 upstream server temporarily disabled while reading response header from upstream, client: 10.128.xxx.xxx, server: , request: "POST /api/projects/14/exports HTTP/1.1", upstream: "http://<IP_ADDRESS>:8000/api/projects/14/exports", host: "<snip>"
2024/05/02 13:22:03 [error] 21#21: *173314 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.128.xxx.xxx, server: , request: "POST /api/projects/14/exports HTTP/1.1", upstream: "http://<IP_ADDRESS>:8000/api/projects/14/exports", host: "<snip>"

To Reproduce
Steps to reproduce the behavior:

Create a large project with 18000 tasks, 25000 annotations, and ~2kb of data per task.
POST /api/projects/{project_id}/exports
Observe nginx timeout errors

Expected behavior
POST /api/projects/{project_id}/exports succeeds regardless of the size of the project size.
Environment (please complete the following information):

Label Studio version 1.12.0

Looks the backend went down because it either took > 90s to respond or lack of resources. Try to set env variable UWSGI_WORKER_HARAKIRI=0.

Looks the backend went down because it either took > 90s to respond or lack of resources. Try to set env variable UWSGI_WORKER_HARAKIRI=0.

We tried setting UWSGI_WORKER_HARAKIRI to 361 and 0 but the error still occurs.

Me too @sfrolich


Empty hidden folders appearing in the current directory at Godot launch

Godot version:
Godot Engine v4.0.dev.calinou.4e52b8401
OS/device including version:
Debian Buster amd64 / Radeon RX550 (radeon)
Issue description:
When you launch Godot (from a terminal), it will create an empty HIDDEN .godot/editor folder in the current directory.
Polluting any folder you happen to be in for no reason is bad enough, but that's not all. If you don't have write access to the current folder, then Godot will not even launch - it throws an error and quits immediately.
Steps to reproduce:
cd /  # Navigate to a folder you don't have write access to
~/godot/godot  # Launch Godot - it will throw an error and not launch
cd ~/Downloads  # Navigate to an empty folder you do have write access to
~/godot/godot  # Launch Godot and observe empty hidden .godot/editor appear (which stays even after you close Godot)

Expected behavior:

Godot launches regardless of whether or not do you have write access to the current folder;
If there is no reason to pollute the current folder (i.e. there is no project in the current folder), Godot creates any of its files in your home directory, not in the current folder.

Same as #49179

Duplicate of https://github.com/godotengine/godot/issues/49179 (same cause).


ActionContext is not able to get the actual value assigned from the rules

Hi,
Here is a snippet where we pass certain parameters on success and failure methods.

Now I was expecting the underlying value in my action context but instead I get the value in string  like "Device.Id".
I tried a simple arithematic equation like "20*2" that too is being received as a string

Hi @vprabhu81, this is intended behavior, context does not automatically get evaluated.
Can you provide the context on what you are trying to achieve?

I have these parameters passed into the rule engines, On success or failure I would need to retireve those data set to send notifications.
I am bit surprised though because I see that in the sample below we do pass the expressions as an input

https://microsoft.github.io/RulesEngine/#outputexpression

Hi @vprabhu81 , assuming you want to create a custom action, context is passed as is and needs to be parsed at the custom action code
e.g.
https://github.com/microsoft/RulesEngine/blob/a74f73a44e38ce27c76945f15fd697c7abe5eef9/src/RulesEngine/Actions/ExpressionOutputAction.cs#L21-L22
If you just want to return an object , just use outputExpression and set the object there
e.g.
"OnSuccess": {
            "Name": "OutputExpression",  //Name of action you want to call
            "Context": {  //This is passed to the action as action context
               "Expression": "new (Device.Id as BodyId, Device.DateTimeUTC as EventUTCTime)"
            }
         }

@abbasc52 ,
How do I Inject the RuleExpressionParser into my custom action? while registering the custom actions in RESettings, I will not have the rule engine instance yet, Is there an example I can refer to?
I tried the second approach as I just need the object in the custom action
"Expression": "new (Device.Id as BodyId, Device.DateTimeUTC as EventUTCTime)"
Unfortunately I still get it as string at the receiving end

@abbasc52 ,
How do I Inject the RuleExpressionParser into my custom action? while registering the custom actions in RESettings, I will not have the rule engine instance yet, Is there an example I can refer to?
I tried the second approach as I just need the object in the custom action "Expression": "new (Device.Id as BodyId, Device.DateTimeUTC as EventUTCTime)"
Unfortunately I still get it as string at the receiving end

I found the answer on UnitTests
Name: "OutputExpression"
expression: "input1.country.ToString() +  input2.totalOrders.ToString()",
"OnSuccess": {
            "Name": "OutputExpression",
            "Context": {  //This is passed to the action as action context
               "expression": "input1.country.ToString() +  input2.totalOrders.ToString()",
		   "foo": 3
            }
         }

See here
I hope this snippet can be added to the docs.

Thanks @m4ss1m0g the case difference of the "expression" key made this work for me as well!


BooleanFields returning as 1/0 (instead of True/False)

Something I've noticed occurring is that BooleanFields are returning 0/1 instead of False/True. The field definitions haven't changed, and pointing the app at another DB with the same data returns the proper False/True.
Any ideas for better debugging of this?
This may be as simple as bringing this PR over https://github.com/marcogiusti/django-pyodbc-azure/commit/d6c5c49d1d86aa6bcef6bdd582ee1d94852b6448

Does #17 solve your problem?

Been away - #17 seemed to do the trick.


Migrate to GA Universal Analytics

@moby86 @fauvel
Docu: https://developers.google.com/analytics/devguides/collection/upgrade/reference/gajs-analyticsjs
Things to consider:

Cross Domain Tracking: I will drop it, because we don't need to track sessions across domains. It would require us to list all linked domains on on every website.
Custom Dimensions/Metrics: These replace the previous custom variables. Dimensions are strings, Metrics are numbers.
We will need to configure them in GA Admin: "Property > Custom Definitions"
Ajax Navigation Tracking: We need to set the page whenever we track a new pageview, otherwise the tracker object would reuse the page from its initialization.

PR changes:

CM_Http_Response_*: Are now service-manager aware, mandatory second argument
CMTest_TestCase: Is now service-manager aware
CMService_GoogleAnalytics_Client::addPageView():  Path now mandatory
CM_Service_Tracking_ClientInterface::trackPageView(): Path now mandatory

@fauvel please review
Tracks like this in the browser:

@fauvel there were a few more adjustments necessary so that the new GA tracking works well with ajax navigation. Let's have a brief look together? Everything's summarized in the description as well!

@mariansollmann @vogdb please review

Ok. lgtm but my opinion here is very doubtful.

looks good

makes sense. looks good


WARNING: /mnt was not properly dismounted message on console

OPNsense 15.7.11-i386
FreeBSD 10.1-RELEASE-p18
LibreSSL 2.2.2
When booting the following messages appears on console after reboot with GUI and console

This is weird because mount command does not report /mnt mounted
root@OPNsense:~ # mount
/dev/ada0s1a on / (ufs, local, noatime, soft-updates)
devfs on /dev (devfs, local, multilabel)
devfs on /var/dhcpd/dev (devfs, local, multilabel)

known to happen especially with VM. not fatal, not fixable.


Authors, editors update

Thank you to new authors @baynezy, @RyanGWU82, @walterking. Congratulations to @lobster1234 on being named editor for Batch, SQS, SNS!

👍 Great, and thank you @baynezy @RyanGWU82 @walterking @lobster1234 !


Make sorting similar to the way we can pass fields

We should be able to do something like this:
collection.find({}, { sort : 'name -date', fields : 'name date age' }, ...);

fixed in #132 🎉


Cherry pick of #5592: Remove redundant log in fillPodInfo/fillServiceInfo#5731: Use labels to enhance records filtering in FA e2e tests#5770: Improve flow-visibility e2e test

Cherry pick of #5592 #5731 #5770 on release-1.14.
#5592: Remove redundant log in fillPodInfo/fillServiceInfo
#5731: Use labels to enhance records filtering in FA e2e tests
#5770: Improve flow-visibility e2e test
For details on the cherry pick process, see the cherry pick requests page.

/test-all

@antoninbas should I squash these commits?

@yuntanghsu why did you have to update the PR?

@yuntanghsu why did you have to update the PR?

I squashed the commits.

@yuntanghsu why did you have to update the PR?

I squashed the commits.
There were some commits I think they were not squashed well before.

@tnqn Do we generally squash the commits manually for individual PRs when cherry-picking multiple PRs at once? I'm talking about individual PRs which may have been merged with "Squash and merge" but originally contained multiple commits (see #5592) for an example.

@tnqn Do we generally squash the commits manually for individual PRs when cherry-picking multiple PRs at once? I'm talking about individual PRs which may have been merged with "Squash and merge" but originally contained multiple commits (see #5592) for an example.

I always rebase and merge to keep commits consistent, to make it easy to search whether a commit is in a branch. I don't recall I have cherry-picked PRs containing multiple commits (as critical bugfixes don't usually contain multiple commits), but if I were doing it, I would cherry-pick the merge commit manually (https://github.com/antrea-io/antrea/commit/d6766ccab27e2297298f0e549909d160f92e733c in this case).

@antoninbas I've manually cherry-picked these 3 PRs. Please take a look to see if it is correct.

It's a bit misleading to reuse the same PR if you didn't use the script.
The cherry-pick is not "automated" since you did it manually.

It's a bit misleading to reuse the same PR if you didn't use the script.
What do you mean here? Shouldn't I manually cherry-pick these PRs? Or should I manually do it for the first PR only?

@yuntanghsu I thought you were going to do it manually for all PRs:
git checkout -b cherry-pick-of-...
git cherry-pick d6766cc
...

I just realize you were saying I should create another PR to replace this one instead of referring to the PRs in this PR.

replaced by #5900


NPE when the contextObject does not exist in the tree

Would it be possible also to add a fix so that we do not have a NPE in the case the object of the query is not in the tree ?
I..e:
Instead of doing:
    TreeNode treeNode = ContextManager.nodeFor(contextObject);
    if(treeNode == null) {
      return;
    }

    Set<TreeNode> result = queryBuilder()
        .descendants()
        .filter(context(attributes(Matchers.<Map<String, Object>>allOf(
            hasAttribute("type", descriptor.getType()),
            hasAttribute("name", descriptor.getObserverName()),
            hasTags(descriptor.getTags())))))
        .filter(context(identifier(subclassOf(OperationStatistic.class))))
        .build().execute(Collections.singleton(treeNode));

We should be able to just do something like:
 Set<TreeNode> result = queryBuilder()
        .descendants()
        .filter(context(attributes(Matchers.<Map<String, Object>>allOf(
            hasAttribute("type", descriptor.getType()),
            hasAttribute("name", descriptor.getObserverName()),
            hasTags(descriptor.getTags())))))
        .filter(context(identifier(subclassOf(OperationStatistic.class))))
        .build().execute(Collections.singleton(ContextManager.nodeFor(contextObject)));

or:
        .build().execute(contextObject);

And the query system would just return an empty set of nodes because the queried objects are not there.
(related to https://github.com/Terracotta-OSS/terracotta-platform/pull/263)

In some case, yes it would make sense that we have for example something like: ContextManager.getNodeFor(contextObject) throw NoSuchElementException. In the case where you would want to make sure that the context object is in the tree.
But in my case, where I just want to query the tree to find some stats, I do not care if the object is there or not, I care about if I have results or not. In my case, I will have some tests elsewhere to verify that some context objects are well put in the tree and that I can have some stat descriptors associated to them. So if I send the wrong context object, and it is not in the tree, this "bug" would be catched at another place (I won't get stats or descriptors).
It's like we would need something like these perhaps ?

ContextManager.getNodeFor(contextObject) throw NoSuchElementException
 .build().execute(contextObject); // would do .build().execute(asList(ContextManager.nodeFor(contextObject)));
 .build().execute(asList(ContextManager.getNodeFor(contextObject)));
 .build().execute(asList(ContextManager.nodeFor(contextObject))); // would tolerate nulls to not "search" childs of null root nodes


[VL]Daily Update Velox Version (20231203)

What changes were proposed in this pull request?
[VL]Daily Update Velox Version (20231203)
How was this patch tested?
CI/CD

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_3913_time.csv
log/native_master_12_03_2023_558039323_time.csv
difference
percentage

q1
33.17
34.07
0.899
102.71%

q2
26.87
24.77
-2.094
92.21%

q3
37.49
37.57
0.079
100.21%

q4
38.57
37.63
-0.937
97.57%

q5
72.04
71.98
-0.058
99.92%

q6
6.96
7.08
0.122
101.75%

q7
82.58
85.82
3.243
103.93%

q8
87.12
87.36
0.240
100.28%

q9
120.20
123.46
3.253
102.71%

q10
45.12
45.50
0.381
100.84%

q11
20.00
19.71
-0.287
98.56%

q12
26.42
28.46
2.037
107.71%

q13
46.74
46.75
0.006
100.01%

q14
13.67
13.79
0.119
100.87%

q15
28.18
27.74
-0.445
98.42%

q16
15.68
15.40
-0.277
98.23%

q17
102.01
102.03
0.023
100.02%

q18
150.59
150.05
-0.537
99.64%

q19
14.20
12.97
-1.225
91.37%

q20
28.81
27.88
-0.931
96.77%

q21
225.78
225.84
0.063
100.03%

q22
13.08
13.46
0.384
102.94%

total
1235.28
1239.34
4.058
100.33%

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_master_12_04_2023_time.csv
log/native_master_12_03_2023_558039323_time.csv
difference
percentage

q1
34.65
34.07
-0.580
98.33%

q2
24.91
24.77
-0.130
99.48%

q3
36.38
37.57
1.188
103.26%

q4
37.37
37.63
0.264
100.71%

q5
72.63
71.98
-0.645
99.11%

q6
6.87
7.08
0.209
103.04%

q7
85.44
85.82
0.387
100.45%

q8
87.86
87.36
-0.505
99.43%

q9
124.52
123.46
-1.062
99.15%

q10
46.04
45.50
-0.545
98.82%

q11
20.12
19.71
-0.413
97.95%

q12
26.71
28.46
1.754
106.57%

q13
46.45
46.75
0.297
100.64%

q14
14.55
13.79
-0.757
94.79%

q15
28.16
27.74
-0.422
98.50%

q16
15.75
15.40
-0.354
97.75%

q17
103.10
102.03
-1.076
98.96%

q18
150.63
150.05
-0.580
99.62%

q19
12.90
12.97
0.072
100.56%

q20
27.73
27.88
0.154
100.55%

q21
222.80
225.84
3.047
101.37%

q22
13.06
13.46
0.407
103.12%

total
1238.63
1239.34
0.709
100.06%

minor suggestion: append velox commit id or commit msg in pr description, and keep pr description when merging, it helps us to track rebase log. cc @zhouyuan

@Yohahaha thanks for the tip, noted and will apply in future rebase. The idea is to improve the daily rebase and make it as an automatic job eventually
thanks, -yuan


../aten/src/ATen/native/cuda/Loss.cu:92: operator(): block: [37,0,0], thread: [96,0,0] Assertion input_val >= zero && input_val <= one failed.

Hi Shihan Liu,
Thanks for your work on this repo!
I'm trying to run a custom training myself, using your train script and the yolo formats. The dataset seems to be fine, looking at demo/load_dataset.py. Any ideas where I can start my bug hunt, given above error?
Best regards,
Ramon

this error occurs when

there's at least one NAN(not a number) element in your prediction, check by using torch.isnan(tensor). if so, reducing your learning rate might solve your problem, but sometimes it is because your installed CUDA version is too high for your GPU device(s)

for name, param in self.model.named_parameters():
    if param.grad is not None and torch.isnan(param.grad).any():
        print("nan gradient name:", name)

the length of prediction does not match the length of labels, please check your dataset config and make sure it is correct.

Thanks for your fast reply.
It looks like it's training correctly after changing the fp16 setting to false again. Could that be the cause? First 30 epochs have succeeded so far. I'll keep you posted.

what type is your GPU? I guess that your GPU might not fully support AMP(auto-mixed-precision) training, I test training with fp16 enabled and it works well in RTX30 sesries and Tesla T4

of the CUDA

I have the same problem.

Thanks for your fast reply.
It looks like it's training correctly after changing the fp16 setting to false again. Could that be the cause? First 30 epochs have succeeded so far. I'll keep you posted.

I have the same problem after seting the fp16 to true.


Improve example packages

We have example Data Packages https://staging.datapackaged.com/examples
Acceptance criteria

[x] we have few (2-3), but good example data packages that are clear and easy to understand of how to create desired views
[x] Any new user can easily add desired view to his/her Data Package, by just looking at the example package

Tasks

[x] fix-ups according to feedback on existing ones
[x] Choose 3 example package and make it ideal

https://staging.datapackaged.com/examples/simple-graph-spec
https://staging.datapackaged.com/examples/geojson-tutorial
https://staging.datapackaged.com/examples/vega-views-tutorial

[x] change titles for packages to be simple and clear - describing what tutorial is for
[x] nice intro/summary in README
[x] datapackage.json embedded
[x] step by step explaining how to create views for package
[x] Ask someone to create views for any package according to example data package
[x] Do the same for all examples

Analysis
Feedback on existing ones

[ ] Typos
[x] Data Package is 2 words
[ ] heading should be h2
[x] script tag (gist) inside README is bad idea cause of security problems

allow to embed datapackage.json with new extension

[ ] Reasonable titles for example Data Packages,

should be easily understandable that eg: this is vega, this is simple one, this is vega super complex, etc...

[ ] More description (README) on search page
[ ] vega map:

we do not support topojson, so no data is displayed for states and not even an error message or something like that.. Eg: "we do not support topo json so data can not be displayed:
in resources we should have either name or index, both of them are confusing

FIXED 5 example packages created http://datapackaged.com/examples
covering:

simple graph spec  http://datapackaged.com/examples/simple-graph-spec
GeoJson - http://datapackaged.com/examples/geojson-tutorial
vega graph spec

http://datapackaged.com/examples/vega-views-tutorial-topojson
http://datapackaged.com/examples/vega-views-tutorial-grouping
http://datapackaged.com/examples/vega-views-tutorial-lines


Fix drawdown behavior

Drawdown function does not work properly.
If one series had a drawdown from 2 to 1 and a drawdown from 10 to 6, pyfolio was considering the second one as the higher drawdown, but in fact the first drawdown was -50% and the second one was -40%.
This commit resolves this issue: #179
I added the tests for the both cases.

Thanks @flaviodrt! Still some PEP8 issues that should be easy to fix:
pyfolio/tests/test_timeseries.py:22:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:24:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:28:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:29:5: E304 blank lines found after function decorator
pyfolio/tests/test_timeseries.py:35:49: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:36:49: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:40:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:42:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:56:22: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:57:56: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:58:57: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:59:58: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:62:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:64:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:66:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:67:74: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:69:56: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:71:58: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:73:60: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:75:1: W293 blank line contains whitespace
pyfolio/tests/test_timeseries.py:76:74: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:78:56: W291 trailing whitespace
pyfolio/tests/test_timeseries.py:80:58: W291 trailing whitespace

(you can use flake8 to check and autopep8 to autofix)

Hi @twiecki!
Sorry for that.
I've sent a new commit with the fix.

Thanks. Some of the failures seem unrelated and are probably due to pandas 0.18.1. However, these two are related:
======================================================================
ERROR: test_gen_drawdown_table_relative_0 (pyfolio.tests.test_timeseries.TestDrawdown)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/nose_parameterized/parameterized.py", line 365, in standalone_func
    return func(*(a + p.args), **p.kwargs)
  File "/home/travis/build/quantopian/pyfolio/pyfolio/tests/test_timeseries.py", line 64, in test_gen_drawdown_table_relative
    drawdowns = timeseries.gen_drawdown_table(rets, top=2)
  File "/home/travis/build/quantopian/pyfolio/pyfolio/timeseries.py", line 1072, in gen_drawdown_table
    unit='D')
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/util/decorators.py", line 91, in wrapper
    return func(*args, **kwargs)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 291, in to_datetime
    unit=unit, infer_datetime_format=infer_datetime_format)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 420, in _to_datetime
    values = _convert_listlike(arg._values, False, format)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 331, in _convert_listlike
    errors=errors)
  File "pandas/tslib.pyx", line 1981, in pandas.tslib.array_with_unit_to_datetime (pandas/tslib.c:38273)
  File "pandas/tslib.pyx", line 2071, in pandas.tslib.array_with_unit_to_datetime (pandas/tslib.c:37194)
ValueError: non convertible value 2000-01-08with the unit 'D'
======================================================================
ERROR: test_get_max_drawdown_begins_first_day_0 (pyfolio.tests.test_timeseries.TestDrawdown)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/nose_parameterized/parameterized.py", line 365, in standalone_func
    return func(*(a + p.args), **p.kwargs)
  File "/home/travis/build/quantopian/pyfolio/pyfolio/tests/test_timeseries.py", line 30, in test_get_max_drawdown_begins_first_day
    drawdowns = timeseries.gen_drawdown_table(rets, top=1)
  File "/home/travis/build/quantopian/pyfolio/pyfolio/timeseries.py", line 1072, in gen_drawdown_table
    unit='D')
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/util/decorators.py", line 91, in wrapper
    return func(*args, **kwargs)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 291, in to_datetime
    unit=unit, infer_datetime_format=infer_datetime_format)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 420, in _to_datetime
    values = _convert_listlike(arg._values, False, format)
  File "/home/travis/miniconda/envs/testenv/lib/python2.7/site-packages/pandas/tseries/tools.py", line 331, in _convert_listlike
    errors=errors)
  File "pandas/tslib.pyx", line 1981, in pandas.tslib.array_with_unit_to_datetime (pandas/tslib.c:38273)
  File "pandas/tslib.pyx", line 2071, in pandas.tslib.array_with_unit_to_datetime (pandas/tslib.c:37194)
ValueError: non convertible value 2000-01-03with the unit 'D'

I think that were related to pandas 0.18.1 because the other tests in previous commits before my changes were failing too.
Removing the attribute unit from pd.to_datetime does not raise the exception.
Do you think that is a good solution?

Yep, that looks great. Thanks for the fix!


Split spec into smaller fragments

Split spec out into separate files, to ease editing, and to make it possible to create language-specific specs as well. Java is demonstrated in this commit.

Once this is merged we will have a Java-specific spec doc. I will work on the other language spec docs as a follow-up, next week, once any concerns with the Java-specific spec doc are worked through


Abnormal Taxonomy Assignment?

In running a CONSTAX job on the MSU HPCC there were some strange results in taxonomy assignment. For details I do have to give that I suspect may be relevant, I had the job train using the UNITE general fasta releases for all Eukaryotes ITS.
Specifically, I am running into a situation where there are spurious _1's throughout certain OTUs (Ex. Basidiomycota Agaricomycetes_1 Agaricales_1 Cortinariaceae_1 in one OTU, but another that has these same levels without the _1) which I assume is a holdover from the appending things for fixing duplicates to not break RDP classifier. However, these things weren't the type of duplicates detected as an issue by the classifier.
Additionally, many OTUs have their assignments at the wrong taxonomic level. For example, I have some OTUs that belong to the "Kingdom" Alternaria metachromatica. One instance is Kingdom: Basidiomycota Phylum: Agaricomycetes_1, Class: Agaricales_1.
Unfortunately, I don't have the slurm output for this file anymore to attach for help, but I was moreso curious if this type of error had been seen before. To me, it looks like occassionally lower taxonomic levels are being considered Kingdom and everything else is in the proper descending order but being shifted over a few slots (such as family becoming Class, class becoming Phylum, and Phylum becoming Kingdom in the above example).

Hello @szymanskishay,
It is kind of hard to help withough knowing which versions of CONSTAX2 and UNITE are you using. Please run constax -v to check which version you are using. Additionally, how do you run constax?
Regarding your first question, Iw ould try rerunning constax using the --train option again and see what happend.
For the second question, @liberjul  may have an answer for you.
Thanks for using CONSTAX2!
G.

Hello @szymanskishay,
It is kind of hard to help withough knowing which versions of CONSTAX2 and UNITE are you using. Please run constax -v to check which version you are using. Additionally, how do you run constax?
Regarding your first question, Iw ould try rerunning constax using the --train option again and see what happend. For the second question, @liberjul may have an answer for you.
Thanks for using CONSTAX2! G.

I was using 2.018, but did just update to 2.019 and it is now working properly having retrained and rerun everything.

@szymanskishay glad it worked properly now!
G.


Explicitly set SSL1.2 and SSL1.3 protocol for networking

Testing whether or not explicitly setting the SSL version helps workaround the issue:
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception.
                  ---> System.ComponentModel.Win32Exception (0x80090304): The Local Security Authority cannot be contacted

https://dev.azure.com/azure-sdk/internal/_build/results?buildId=2783642&view=logs&j=3dc8fd7e-4368-5a92-293e-d53cefc8c4b3&t=e2744c02-d5ab-5ec4-b597-2a76a072b500
Trying to figure out how to fix the issue outlined in https://github.com/actions/runner-images/issues/7007

/azp run net - resourcemanager

Looks like it still failed in https://dev.azure.com/azure-sdk/public/_build/results?buildId=2784950&view=logs&j=3dc8fd7e-4368-5a92-293e-d53cefc8c4b3&t=b942b2a6-feb0-56ec-1249-c44856571d9f I'm going to try and scope it to SSL 1.3 only

/azp run net - resourcemanager - mgmt


Fix boolean logic related to showing delete button

The logic which ideitifies users own comment was wrong.
This bug was introduced when enabling guests to view comments.

Storybook Hub is building storybooks for every commit in this PR.
Latest Storybook: https://803b26d8-8e69-427e-bf94-532dc70bcca0.sbook.io/
( Visit here for more info )

This comment is automatically added by Storybook Hub


Rectified the Indentation

Signed-off-by: Taewan Kim<EMAIL_ADDRESS>Description
Fix the indentation issue in build script.

Follow-up revision from #152 (line 577)


Tab questions

I have a two part question

is it possible split form fields across multiple tabs in a dialogue?

is it possible to nest tabs in a dialogue?

See basic sample in Serene
https://github.com/volkanceylan/Serene/tree/master/Serene/Serene.Web/Modules/BasicSamples/Dialogs/OtherFormInTab
https://github.com/volkanceylan/Serene/tree/master/Serene/Serene.Web/Modules/BasicSamples/Dialogs/OtherFormInTabOneBar


Forc init appends to .gitignore rather than overriding it

closes #2402.
This looked like an easy fix so I wanted to push a quick fix. Before this PR the .gitignore was written with fs::write which, according to the doc, overrides the content. We should be appending our stuff to the existing .gitignore

Had a little bit of a problem with git 😅 but should be good to go now!


⚠ gorzdrav.org has degraded performance

In d0f4524, gorzdrav.org (https://gorzdrav.org) experienced degraded performance:

HTTP code: 200
Response time: 1997 ms

Resolved: gorzdrav.org performance has improved in 7b38b0e.


Allow for 0 in numeric scale values

As an example, we have a feature that has a cost of 1 from levels 3 to 16, then has a cost of 0 from level 17 onwards. However, a numeric scale value does not allow for inputting '0'.
We would love to avoid having to write variations of sign(floor( 16 / @classes.bob.levels )). :)

Additionally, it would be good if when the scale value is '0' the ability usage dialog does not prompt for consumption.