Pandas-esque describe method

Are there any plans for a pandas-like describe method that would combine some of the aggregate methods (count, mean, standard deviation, peak) into a table to give you a rough understanding of a dataset, or is that out of scope of this library?

Hey @SebastianSzturo,
If I understood correctly it will a feature of Kino and Livebook in the near feature. There's already a PR on Kino where this feature is being worked on (almost ready tbh) and waiting to be released.
That's definitely something I also miss and I think will help a lot on having a broad view of datasets.

I think we still need describe in here. Does dplyr have something similar?

Oh, I see... I was too obsessed about the table view! Hahaha.
I don't think dplyr has a summarization other than glimpse.
We do have summary in base R, which gives a not so nice summary of each row:
> mtcars %>% summary()
      mpg             cyl             disp             hp             drat
 Min.   :10.40   Min.   :4.000   Min.   : 71.1   Min.   : 52.0   Min.   :2.760
 1st Qu.:15.43   1st Qu.:4.000   1st Qu.:120.8   1st Qu.: 96.5   1st Qu.:3.080
 Median :19.20   Median :6.000   Median :196.3   Median :123.0   Median :3.695
 Mean   :20.09   Mean   :6.188   Mean   :230.7   Mean   :146.7   Mean   :3.597
 3rd Qu.:22.80   3rd Qu.:8.000   3rd Qu.:326.0   3rd Qu.:180.0   3rd Qu.:3.920
 Max.   :33.90   Max.   :8.000   Max.   :472.0   Max.   :335.0   Max.   :4.930
       wt             qsec             vs               am              gear
 Min.   :1.513   Min.   :14.50   Min.   :0.0000   Min.   :0.0000   Min.   :3.000
 1st Qu.:2.581   1st Qu.:16.89   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:3.000
 Median :3.325   Median :17.71   Median :0.0000   Median :0.0000   Median :4.000
 Mean   :3.217   Mean   :17.85   Mean   :0.4375   Mean   :0.4062   Mean   :3.688
 3rd Qu.:3.610   3rd Qu.:18.90   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:4.000
 Max.   :5.424   Max.   :22.90   Max.   :1.0000   Max.   :1.0000   Max.   :5.000
      carb
 Min.   :1.000
 1st Qu.:2.000
 Median :2.000
 Mean   :2.812
 3rd Qu.:4.000
 Max.   :8.000

But we do have - in another package called skimr - the function skim that returns a very nice table similar to describe:
mtcars %>% skim()
── Data Summary ────────────────────────
                          Values
Name                       Piped data
Number of rows             32
Number of columns          11
_______________________
Column type frequency:
 numeric                  11
________________________
Group variables            None

── Variable type: numeric ─────────────────────────────────────────────────────────────────────────────────────────────────────────────
  skim_variable n_missing complete_rate    mean      sd    p0    p25    p50    p75   p100 hist
1 mpg                   0             1  20.1     6.03  10.4   15.4   19.2   22.8   33.9  ▃▇▅▁▂
2 cyl                   0             1   6.19    1.79   4      4      6      8      8    ▆▁▃▁▇
3 disp                  0             1 231.    124.    71.1  121.   196.   326    472    ▇▃▃▃▂
4 hp                    0             1 147.     68.6   52     96.5  123    180    335    ▇▇▆▃▁
5 drat                  0             1   3.60    0.535  2.76   3.08   3.70   3.92   4.93 ▇▃▇▅▁
6 wt                    0             1   3.22    0.978  1.51   2.58   3.32   3.61   5.42 ▃▃▇▁▂
7 qsec                  0             1  17.8     1.79  14.5   16.9   17.7   18.9   22.9  ▃▇▇▂▁
8 vs                    0             1   0.438   0.504  0      0      0      1      1    ▇▁▁▁▆
9 am                    0             1   0.406   0.499  0      0      0      1      1    ▇▁▁▁▆
10 gear                  0             1   3.69    0.738  3      3      4      4      5    ▇▁▆▁▂
11 carb                  0             1   2.81    1.62   1      2      2      4      8    ▇▂▅▁▁

Maybe we should follow this path... 😄

I think we still need describe in here. Does dplyr have something similar?

It doesn't but I think that's because, as said by @halian-vilela, base R does have a feature to do summary statistics.
And Wickham thought that this feature shouldn't be in dplyr. In our case, I do agree that we should have a describe/1. I prefer describe() over summary() because the last one is too similar to the already existing summarise/2.

This should totally be in Explorer :). It doesn't require new dependencies and it would be obnoxious for it to be a dedicated library. Not only is it useful, but I think it's a good opportunity for a blog post showing what you can do with Explorer. I'd like to jump on this one if that's okay :grin:.

Hey @cigrainger!
Nice, I would suggest that you take a look at the mental model {skimr} uses to implement it. I really like the way they separate the summary by the column types. I agree that - for Explorer and Elixir - it's overkill to have a dedicated library just for that, but also, exactly for being dedicated, {skimr} has a lot of small features and allow for little customizations.
I would say that, at least for a first moment, taking a broader look at those features and implementing a cherry picked set of them would give a great result!

I'm excited to see an open issue for this. We may be in need of profiling in the near term. I have no experience with Python or pandas, but I did just find pandas-profiling which is maybe the 2.0 of this describe/1 feature.

Excited to see Explorer catching up to Pandas. I'm a DE and pandas describe is always the first thing I do when I am exploring the data. Would be create to see this in explorer. 🎉


Woo skeleton: single page anchor links don't work on the other subpage

Hi,
I'm playing with the woo-skeleton on my end and I noticed the following behavior.
If I go to the subpage 'Style Guide' which is not part of the single page landing page http://demo.getgrav.org/woo-skeleton/demo and then select either of the anchor links from the top bar, they will not work.
For instance, clicking features just enlarges the url in my brower to
http://demo.getgrav.org/woo-skeleton/demo#features

This link doesn't exist and so the browser doesn't do anything.
I'm testing with Firefox and Chromium on Debian right now.
Any advice on circumventing this? Or should I just limit this skeleton to a single landing page for now?
Best regards,
Matthias

It appears the menu has just got named anchors (e.g. #pricing) because the design is intended for a one page site.  However, the typography pages is intended to show some various typographic styles.
The menu could be fixed to point to the home page and then the anchor.  Not a big deal, it's a simple fix. I'll assign this to karol who did the theme port.

I'm going to close this as it's actually a woo skeleton issue, not a grav issue.


fix missing cleanup, if response socket is no longer writeable (issue 1547)

Relates to issue #1547, see my comment there

I don't really know how to write tests for koa, so not sure if I can be of help with that.


update Bluemix references to IBM Cloud

Hi @stevemart
since this was taken care by @rhagarty PR, I am closing it
Thanks
Alok


build-thirdparty.sh fail when build ncurses

Describe the bug
build-thirdparty.sh fail when build ncurses.
It is a known issue in Ubuntu
To Reproduce
Steps to reproduce the behavior:

./build-thirdparty.sh
See error

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

Desktop (please complete the following information):

OS: ubuntu
Version: 16.04

Additional context
Add any other context about the problem here.

commit： ae19fbfc8b741a9cd70c780e6f70b9e9a08bb493 has fixed all the issues.


Add copyright generation script.

Also fix some incorrect text in the copyright overview.

See also #242 which is also attempting to fix the construction start date.

Rebased on DM-15172.


"Provide a valid sink argument" error

Hi, I'm very new to the clustering. I'm trying out the example file and I have "TS_GER_1" downloaded. However, it seems I cannot run the load_timeseries_data function. I'm getting this error.

Hi, thanks for raising this issue. I believe the error is likely connected to the version of underlying packages. When the TimeSeriesClustering package was created, the function inputs to some of the underlying package functions (e.g. CSV.read in this case) were different than the most recent version of these functions.
In order to fix this issue, what you can do is to look into the error message, identify the file where this error occurs (in this case src/utils/load_data.jl), and update the function (in this case, update CSV.read to the new way it is used).

Please feel free to submit any changes you make as a Pull Request, we can then incorporate that in the main version of the code.

@jarupas please let me know if you run into any further issues with this.


FF: Export All Flags menu item functionality [discuss]

This is how we have done it, but I think we should really have these be separate menu items (download design / email data). That would change these to just two simple confirm modals also.
@zackcl you'll be back soon enough, imma start tagging you again

@danoswaltCL I think that's a good idea! I will apply this to the new Figma design and share it with you soon.

@danoswaltCL What do you think?

Verify whether the current behavior in experiments exports segment values, id values, for include/exclude lists.


Initial Cleanups and Fixes

Added missing types.
Updated .gitignore file.
Cleaned up code around the place.
Fixed generateSchema cli command (Database/CMS merge)
Note:
oclif partially updates the project's README.md based on package.json and command files.
It's going to keep overwriting (and auto-git-adding) the file, replacing a couple of GitHub blob path tags with v0.0.2 (current package version), resulting in broken links.
This is going to plague us until we start publishing released versions for this project.
Until then, we should remember to replace both occurrences of v0.0.2 with main post-generation.

grpc-sdk is missing from package.json

grpc-sdk is not actually used anywhere at this point.
It's merely referenced in a string meant to generate TypeScript schema classes based on ConduitActiveSchema.


Google consent screen always asking for permission grant (View Cloud Identity Groups) everytime we connect

Problem Statement
Hi.
We managed to get this working (thanks for the work!!), but we noticed we were automatically disconnected every 60 minutes.
Searching for this issue it seems 60 minutes is the default expiration for the Google access token.
Didn't find any way to increase it via the configuration, so we enabled the refresh tokens.
Now we don't seem to be disconnected (still didn't try to stay 8 hours connected, but now no certainly every hour) but unfortunately we are prompted to choose Google account and to confirm Group permissions every time we connect.
Found this related issue in Stack Overflow (https://stackoverflow.com/questions/10508557/why-does-google-oauth2-re-ask-user-for-permission-when-i-send-them-to-auth-url-a) and I think it is related.
They mention "The google-api puts "approval_prompt=force" by default when creating the auth url." and that this parameter is causing this behaviour.
Made a search on issues before posting the question, found nothing related, but I wonder why nobody has previously asked; so I guess (and pray) it is a config thing on our end.
Thanks
openvpn-auth-oauth2 logs
CONFIG_OAUTH2_REFRESH_ENABLED=true
CONFIG_OAUTH2_REFRESH_EXPIRES=8h
CONFIG_OAUTH2_REFRESH_SECRET=[SECRET]
CONFIG_OAUTH2_REFRESH_USE__SESSION__ID=true
CONFIG_OPENVPN_AUTH__TOKEN__USER=true

Environment

openvpn-auth-oauth2 Version: 1.21.2
OpenVPN Server Version: OpenVPN 2.6.10 x86_64-redhat-linux-gnu
Server OS: Centos 7
OpenVPN Client (flavor, OS): 3.4.4 Windows

Hi!

Searching for this issue it seems 60 minutes is the default expiration for the Google access token.

In that context, it wont matter. Only the OpenVPN server is authorized to disconnect the client. I guess, the OpenVPN default setting reneg-sec 3600 initiate a re-authentication. openvpn-auth-oauth2 doesn't care about the expire date of the access token.

approval_prompt=force

It problem is a bit on Google side. approval_prompt=force is mandatory, otherwise the Google OIDC Server doesn't issue a refresh token. The refresh token is required for a non-interactive session refresh.
A workaround would be oauth2.refresh.validate-user=false. this enables a session refresh on openvpn-auth-oauth2 without asking for a refresh token. (which should not ask for consent anymore). In conclusion, the also skips the user verification step on Google side.
You will also find some information here: https://github.com/jkroepke/openvpn-auth-oauth2/wiki/Configuration#non-interactive-session-refresh

Thanks for the help!
We have set the reneg-sec to 12 hours.
I guess we could even disable it (reneg-sec 0) as we use AES-256-GCM (https://community.openvpn.net/openvpn/wiki/SWEET32) but OpenVPN doesn't start when reneg is infinite due to another options being enabled. No problem on this side, as 12 hours is enough for us.
Regarding the consent screen, we have tried setting validate-user=false but we see no changes as we keep permissions being requested every time we log-in.
Maybe there's another option misconfigured, but I see no hints on the OpenVPN logs appart from
[IP_REDACTED]:60956 TLS: Username/Password authentication deferred for username ''
We use certificate authentication, issued by local RSA and with common_name being the email of the Google side.
I will keep playing with options, including entirely disabling the refreshes.

Update: Seems we made a mistake when configuring the validate-user entry.
I can confirm that, when correctly set, it works as you predicted:
refresh:     enabled: true     expires: 8h0m0s     use-session-id: true     validate-user: false
Do you know what are the security implications of setting it to false? Thanks

Do you know what are the security implications of setting it to false? Thanks

Sure. If set to false, openvpn-auth-oauth2 assume the user is still valid (e.g enabled, in correct groups) and continue the session.
If a employee opens a VPN session and you disable the account after 3 hours, he is still able to access the VPN for 9 hours.
If validate-user=true, then openvpn-auth-oauth2 caches the refresh token from the initial session start and use the refresh token to refresh the session. Normally, the IDP would deny the refresh, if the users gets deactivated.

I think this is a minor drawback that compensates the improvement in the end-user experience.
I guess it's just then a question of restarting the openvpn-auth-oauth2 service every time we deactive a user in the IDP, or somehow edit the token cache if it is file based. We will check whether the token cache is in memory or not, deactivate a test user, etc... to adjust that procedure.
Thanks again for the support!

it's in-memory ;-)


[fix] rdf/vocabs required_label

Coverage increased (+0.02%) to 84.29% when pulling c71dd96bdb570d0e8810c2e9984ea672e8812b28 on fix-rdf-vocabs into f329d862167bfbc62a4e501351f164104fc2e3ae on master.


Crossreferencing API should accept date formats as YYYY or YYYY-MM

The Crossreferencing API should accept date formats as YYYY or YYYY-MM, because these formats apply to the KBART standard:
For journals, this field should include the date of the first issue available online in the format YYYY-MM-DD. Use only those parts of the date datathat apply.For example, if the journal is annual, only YYYY should be used, whereas if the journal is monthly or quarterly, only YYYY-MM should be used. Only in cases where issues of the journal have specified cover dates including the day should YYYY-MM-DD be used. For books, leave this field blank.

Source: https://groups.niso.org/apps/group_public/download.php/16900/RP-9-2014_KBART.pdf

Added in v8.5.1


field name rules

Documentation reference (URL): https://github.com/ess-dive-community/essdive-csv-structure/blob/master/csv_detailed_guide.md#field-names
Submitter: Kim Ely
Justification (why is this change necessary?): could cause coding/data assimilation issues

I suggest the following changes: It's not the end of the world, but apparently R doesn't particularly like column names that start with a number (i.e. 0-9). Perhaps recommend to not use numbers as the first character?

@regnans I was thinking we had that in the documentation at some point but apparently we never did. How would R handle it if the column name had double quotes for a column that started with a number?

I don't know how R would handle double quotes. (R beginner here!). Although, my feeling is that this could be messy and best avoided. Potentially more problematic than using numbers. Could it work to recommend to not start column names with numbers, but allow it if the data uploader needed to do this?

@robcrystalornelas check the text for this section to see if it captures not starting the field name with a number
I also added text to say don't use CamelCase. Question - I couldn't recall - did ess-dive decide "don't use CamelCase" or "recommend not using CamelCase"? I know this decision came right before the workshop.

@robcrystalornelas Instead of "Field" the term "column" appears throughout the FLMD and dd instructions. Should I change column to field or should I change it to "column/row name"

I'll modify wording a bit then close this issue. Ultimately, we decided that groups, as much as possible should switch to underscores rather than camelcase. But there are definitely exceptions for example, when terms are considered a single entity 'dateTime' or when reporting formats are following other standards that prefer to use camelCase (e.g., sample metadata).


[CARBONDATA-3101] Fixed dataload failure when a column is dropped and added in partition table

Be sure to do all of the following checklist to help us incorporate
your contribution quickly and easily:

[ ] Any interfaces changed?

[ ] Any backward compatibility impacted?

[ ] Document update required?

[ ] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/1413/

Build Failed  with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9671/

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1623/

retest this please

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/1419/

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1628/

Build Failed  with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9676/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/1427/

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1636/

Build Failed  with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9684/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/1428/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1637/

Build Success with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9685/

LGTM

LGTM


feat: OPTIC-1217: Implement Color design tokens as CSS variables and Dark Mode

PR fulfills these requirements

[x] Commit message(s) and PR title follows the format [fix|feat|ci|chore|doc]: TICKET-ID: Short description of change made ex. fix: DEV-XXXX: Removed inconsistent code usage causing intermittent errors
[ ] Tests for the changes have been added/updated (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[ ] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[x] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)
(check all that apply)

[ ] Product design
[ ] Backend (Database)
[ ] Backend (API)
[x] Frontend

Describe the reason for change
significant improvement to ui tokens + adding the ability to toggle between Auto, Light and Dark mode

/git merge develop

/git merge develop


Investigate dangling volumes

It appears that untagged volumes keep getting generated and then left dangling, taking up too much disk space over time.

Fixed when migrated away from rocker #45


struct HRESULT incompatible with int HRESULT across ABI boundary

The current code is using the metadata struct HRESULT out of the box across the ABI. Unfortunately, unlike function params, structs are not handled the same way at the ABI as integers, so frame/register corruption is occurring.
For a short-term fix, replace the HRESULT struct with the integral value at the ABI.
Long-term, we'll need to figure out what the projected types vs ABI types look like. The type system for Win32 is far less constrained than the WinRT type system, and the lack of conventions and rules presents some additional challenges for just how much we can encapsulate projection logic.

This is similar to what I called out on CsWin32: https://github.com/microsoft/CsWin32/issues/51
In particular, this is known to be problematic return types on C++ instance methods (like for COM/DirectX methods). There may of course be other scenarios, including future ones, that exist as well.

This is similar to what I called out on CsWin32: https://github.com/microsoft/CsWin32/issues/51
In particular, this is known to be problematic return types on C++ instance methods (like for COM/DirectX methods). There may of course be other scenarios, including future ones, that exist as well.


[debian] Automate EOL retrieval

Based on https://wiki.debian.org/DebianReleases.
Unfortunately the 'EOL LTS' column couldn't be mapped because it would exclude rows with no EOL LTS date because cells missing LTS dates are entirely absent, rather than being added as empty.

Script execution summary
Executions below 3 seconds are hidden except in case of failure.
By products

Name
Duration
Scripts
Succeeded

debian
9.14s
debian, release_table
✅

By scripts

Name
Duration
#Products
Succeeded

release_table
7.47s
1
✅

Update summary
Updated 1 products: debian.
debian

Item root['releases']['9'] ({'name': '9', 'eol': '2020-07-18'}) added to dictionary.
Item root['releases']['8'] ({'name': '8', 'eol': '2018-06-17'}) added to dictionary.
Item root['releases']['7'] ({'name': '7', 'eol': '2016-04-25'}) added to dictionary.
Item root['releases']['6.0'] ({'name': '6.0', 'eol': '2014-05-31'}) added to dictionary.
Item root['releases']['5.0'] ({'name': '5.0', 'eol': '2012-02-06'}) added to dictionary.
Item root['releases']['4.0'] ({'name': '4.0', 'eol': '2010-02-15'}) added to dictionary.
Item root['releases']['3.1'] ({'name': '3.1', 'eol': '2008-03-31'}) added to dictionary.
Item root['releases']['3.0'] ({'name': '3.0', 'eol': '2006-06-30'}) added to dictionary.
Item root['releases']['2.2'] ({'name': '2.2', 'eol': '2003-06-30'}) added to dictionary.
Item root['releases']['2.1'] ({'name': '2.1', 'eol': '2000-09-30'}) added to dictionary.
Item root['releases']['11'] ({'name': '11', 'eol': '2024-07-31'}) added to dictionary.
Item root['releases']['10'] ({'name': '10', 'eol': '2022-09-10'}) added to dictionary.


Support for RESX WebResources

DeployWebResourcesTask now supports uploading RESX type of web resource. There is also an option of specifying languagecode.

This is released as https://www.nuget.org/packages/spkl/1.0.370


FlowRouter SSR [BUG] is not waiting for Subscription when Subscription is extern with DDP

There is no way that FlowRouter is waiting correctly for a subscription when its subscribed with myDDPConnection.subscribe instead of Meteor.subscribe.

Almost the same problem. I use package from Amy Slagle named aslagle:reactive-table. There is a feature to make paginated subscriptions for every rendered page. So, if I use it, somehow FlowRouter doesn't wait for that subscription if I use FlowRouter.go().
The single way to fix it for is to use BlazeLayout.render(), but I need to make work the FlowRouter.go(), it is very important in my case.


🐛 [Jellyfin] Memory leak

Description
I’ve been using this addon for about 2 weeks now after migrating my Jellyfin server from an older PC and noticed that my memory usage slowly creeps up until HAOS basically decides to kill the addon and restart it
Reproduction steps
1. Install the addon on an ARM64 device (don’t know if x86 has the same issue)
2. Configure the server
3. Add some media
4. Leave the server running for a few days
5. Memory usage will go up until HAOS kills it (I have 3GB free out of 8 and Jellyfin managed to use up to 2GB before being killed)

Addon Logs
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    0
User GID:    0
───────────────────────────────────────

[custom-init] No custom files found, skipping...
[23:36:29] [INF] [1] Main: Jellyfin version: 10.8.13
[23:36:29] [INF] [1] Main: Environment Variables: ["[JELLYFIN_LOG_DIR, /config/addons_config/jellyfin/log]", "[JELLYFIN_CACHE_DIR, /config/addons_config/jellyfin/cache]", "[JELLYFIN_CONFIG_DIR, /config/addons_config/jellyfin]", "[JELLYFIN_WEB_DIR, /config/addons_config/jellyfin/web]", "[JELLYFIN_DATA_DIR, /config/addons_config/jellyfin/data]"]
[23:36:29] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"]
[23:36:29] [INF] [1] Main: Operating system: Linux
[23:36:29] [INF] [1] Main: Architecture: Arm64
[23:36:29] [INF] [1] Main: 64-Bit Process: True
[23:36:29] [INF] [1] Main: User Interactive: True
[23:36:29] [INF] [1] Main: Processor count: 4
[23:36:29] [INF] [1] Main: Program data path: /config/addons_config/jellyfin/data
[23:36:29] [INF] [1] Main: Web resources path: /config/addons_config/jellyfin/web
[23:36:29] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/
[23:36:29] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: /config/addons_config/jellyfin/cache
[23:36:29] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies
[23:36:30] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly InfuseSync, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null from /config/addons_config/jellyfin/data/plugins/InfuseSync_<IP_ADDRESS>/InfuseSync.dll
[23:36:30] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly LiteDB, Version=<IP_ADDRESS>, Culture=neutral
from /config/addons_config/jellyfin/data/plugins/Kodi Sync Queue_<IP_ADDRESS>/LiteDB.dll
[23:36:30] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.KodiSyncQueue, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null from /config/addons_config/jellyfin/data/plugins/Kodi Sync Queue_<IP_ADDRESS>/Jellyfin.Plugin.KodiSyncQueue.dll
[23:36:30] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.OpenSubtitles, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null from /config/addons_config/jellyfin/data/plugins/Open Subtitles_<IP_ADDRESS>/Jellyfin.Plugin.OpenSubtitles.dll
[23:36:30] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:36:30] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : []
[23:36:30] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:36:30] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Using bind addresses: []
[23:36:30] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Using bind exclusions: []
[23:36:34] [INF] [1] InfuseSync.Plugin: InfuseSync is starting.
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: InfuseSync <IP_ADDRESS>
[23:36:34] [INF] [1] Jellyfin.Plugin.KodiSyncQueue.KodiSyncQueuePlugin: KodiSyncQueue is starting...
[23:36:34] [INF] [1] Jellyfin.Plugin.KodiSyncQueue.Data.DbRepo: Creating DB Repository...
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Kodi Sync Queue <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Open Subtitles <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: TMDb <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Studio Images <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: OMDb <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: MusicBrainz <IP_ADDRESS>
[23:36:34] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AudioDB <IP_ADDRESS>
[23:36:34] [INF] [1] Main: Kestrel listening on Any IP4 Address
[23:36:35] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: No XML encryptor configured. Key {REDACTED} may be persisted to storage in unencrypted form.
[23:36:35] [INF] [1] Emby.Server.Implementations.ApplicationHost: Running startup tasks
[23:36:35] [INF] [1] InfuseSync.ScheduledTasks.HousekeepingTask: Infuse housekeeping task scheduled.
[23:36:35] [INF] [1] Jellyfin.Plugin.KodiSyncQueue.ScheduledTasks.RetentionTask: Retention task scheduled
[23:36:35] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Remove Old Cached Data set to fire at 2024-04-29 00:01:00.000 +03:00, which is 00:24:24.3492636 from now.
[23:36:35] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Remove Old Sync Data set to fire at 2024-04-29 00:01:00.000 +03:00, which is 00:24:24.3465058 from now.
[23:36:35] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Extract Chapter Images set to fire at 2024-04-29 02:00:00.000 +03:00, which is 02:23:24.3204781 from now.
[23:36:35] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Found ffmpeg version 5.1.4
[23:36:35] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available decoders: ["libdav1d", "av1", "h264", "hevc", "mpeg2video", "mpeg4", "msmpeg4", "vp8", "libvpx", "vp9", "libvpx-vp9", "aac", "ac3", "dca", "flac", "mp3", "truehd"]
[23:36:35] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available encoders: ["libx264", "h264_v4l2m2m", "libx265", "mpeg4", "msmpeg4", "libvpx", "libvpx-vp9", "aac", "libfdk_aac", "ac3", "dca", "flac", "libmp3lame", "libopus", "truehd", "libvorbis", "srt"]
[23:36:35] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available filters: ["hwupload_vaapi", "zscale", "alphasrc"]
[23:36:35] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: scale_cuda with option Output format (default "same") is not available
[23:36:35] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: tonemap_cuda with option GPU accelerated HDR to SDR tonemapping is not available
[23:36:35] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: tonemap_opencl with option bt2390 is not available
[23:36:36] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: overlay_opencl with option Action to take when encountering EOF from secondary input is not available
[23:36:36] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: overlay_vaapi with option Action to take when encountering EOF from secondary input is not available
[23:36:36] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available hwaccel types: ["drm"]
[23:36:36] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: FFmpeg: /usr/lib/jellyfin-ffmpeg/ffmpeg
[23:36:36] [INF] [1] Emby.Server.Implementations.ApplicationHost: ServerId: REDACTED
[23:36:36] [INF] [1] Emby.Server.Implementations.ApplicationHost: Executed all pre-startup entry points in 0:00:00.3841546
[23:36:36] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete
[23:36:37] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /share/Jellyfin/Demos
[23:36:37] [INF] [10] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /share/Jellyfin/Shows
[23:36:37] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /share/Jellyfin/Movies
[23:36:37] [INF] [1] Emby.Server.Implementations.ApplicationHost: Executed all post-startup entry points in 0:00:00.3824187
[23:36:37] [INF] [1] Main: Startup complete 0:00:08.0834177
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'AccessSchedule' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ActivityLog' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'CustomItemDisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'DisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'HomeSection' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ImageInfo' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ItemDisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Permission' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Preference' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ApiKey' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Device' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'DeviceOptions' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[23:36:37] [WRN] [8] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'User' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[ls.io-init] done.
[23:36:37] INFO: Starting NGinx...
[23:36:38] [INF] [10] Emby.Server.Implementations.ScheduledTasks.TaskManager: StartupTrigger fired for task: Update Plugins
[23:36:38] [INF] [10] Emby.Server.Implementations.ScheduledTasks.TaskManager: Queuing task PluginUpdateTask
[23:36:38] [INF] [11] Emby.Server.Implementations.ScheduledTasks.TaskManager: Executing Update Plugins
[23:36:41] [INF] [11] Emby.Server.Implementations.ScheduledTasks.TaskManager: Update Plugins Completed after 0 minute(s) and 2 seconds
[23:36:41] [INF] [11] Emby.Server.Implementations.ScheduledTasks.TaskManager: ExecuteQueuedTasks
[23:37:39] [INF] [31] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:37:39] [INF] [31] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : []
[23:37:39] [INF] [31] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:39:39] [INF] [22] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:39:39] [INF] [22] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : []
[23:39:39] [INF] [22] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:41:39] [INF] [18] Jellyfin.Networking.Manager.NetworkManager: Defined LAN addresses : [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]
[23:41:39] [INF] [18] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions : []
[23:41:39] [INF] [18] Jellyfin.Networking.Manager.NetworkManager: Using LAN addresses: [<IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16]

Architecture
aarch64
OS
HAos

Hi, my addon is just a front for the linuxserver's container ; you mighy have better support from their repo : https://github.com/linuxserver/docker-jellyfin/issues
An alternative (that I use for resource intensive addons) is to create an automation that restarts such addons daily during the night... Not solving the issue but preventing a lot ;-)

Alright, thanks anyways


BleEndPointPool elements can be misaligned when compiler optimizations are active

When space optimization is turned on, BLEEndPoint elements can end up not aligned correctly in the BleEndPointPool. Alignment of both PoolElements and sEndPointPool should be forced into 8-byte alignment.

Fixed.


CreateContainer documentation issues

WARNING: Missing example for property Input.ConnectionString
WARNING: Missing example for property Input.ContainerName
WARNING: Missing example for property Result.Uri

This has already been fixed.


Refactor flavorassigner for readability

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Extracts the logic of accumulating usage and borrowing for a podset into its own method.
This improves readability.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

/assign @ahg-g

/lgtm


Fix/order most popular

Orders most popular subjects & questions by established order on the home page.

Great, good work!!!!


Add interrupt node to x86 device tree

shippable is failing as dts support for arduino_101_sss(arc part of arduino) is not yet added.

@galak  I have incorporated the changes. Please review it

Any updates?

@galak  i have updated the changes please review it. Following 104553d93f93dbf7892a0f3882f2b3f17215ad1b was breaking my patch after git bisect found it

done the changes please review.


SIGFAULT thrown during message enconding

The use of a null value for a MAL message header field protected by "QoS properties" (*1) leads to a sigfault if the corresponding property is true.
(*1) network_zone, session_name, domain and authentication_id.

Currently we assume that such a value should not be null. Either a default value is provided when initializing the MAL context or a non-zero value is given in the MAL message. However a sigfault is not a correct response.

I think we are correcting the problem in two stages:

Allow null value in the fields of the MAL message during the encoding and use the corresponding bit of the PDU to avoid to encode it. The values returned during the decoding are then systematically the default values (possibly null).
Update the decoding to return the defaults specified by the specification: empty list, empty blob, empty identifier, and so on (see section 3.3.3, 3.3.8, 3.3.9 and 3.3.10 fo the MAL/TCP specification).

Stage 1 and 2 commited.


while_loop vmap error

This one is reported by @fehiepsi in another thread. Quoting the repro from there:
# generate a random number in the interval [0, 0.5]
def f(key):
    def body_fn(uk):
        key = uk[1]
        u = random.uniform(key, ())
        key, _ = random.split(key)
        return u, key

    u, _ = lax.while_loop(lambda uk: uk[0] > 0.5, body_fn, (1., key))
    #u = random.uniform(key, ())  # this is fine
    return u

print(f(random.PRNGKey(0)))  # no error
print(vmap(f)(random.split(random.PRNGKey(0), 2)))  # TypeError: 'NoneType' object cannot be interpreted as an integer

Thanks @mattjj !

#495 should get this one. It was another easy bug caused by me not thinking about tuples!

@mattjj Thanks so much! #495 resolves all errors in my script.


Haskell scotty stackage

This branch essentially reverts the haskell_scotty build to what it was when I found it. A cabal.config is used to fix versions of packages, and cabal sandbox is used to make sure that this build does not contaminate and is not contaminated by outside stuff. However,

The cabal.sandbox.config is not checked in, but instead built with cabal sandbox init by bin/setup when not present. Thus, there should be no issues with different build platforms having different sandboxes: this allows things like different processors.

The cabal.config is from Stackage LTS. Stackage is a set of libraries that have been tested together and then frozen to ensure their safety and stability. Currently Stackage specifies most of the dependencies of eboshi-api; all others are allowed to float between platforms.

The biggest downside of this plan is that the first build of eboshi-api on a new platform might take an hour, as a billion packages are compiled into the sandbox gentoo-style.

Sigh. Something goes wrong with transformers on your end, but I can't tell what. Builds fine for me. Suggestions or information appreciated. Which version of GHC is running there?

Travis CI is currently configured to install GHC 7.6.3 and Cabal 1.18.
However, I don't know if Stackage will be a good strategy for Travis CI, because a new testing VM is instantiated from scratch every run, so it would compile all those packages on every test run. Slow slow slow. Although, Travis has a cache feature to sync a folder to S3 every run, so we might be able to leverage that if this seems worth it otherwise. How big is the Stackage library once compiled?

Ah, we need at least GHC 7.8 for Stackage. Probably a good idea to be there anyway.
Yeah, unless we can persist it we'll probably have to give up on the sandbox. That doesn't mean we have to give up Stackage: we just have to split out the sandbox part.
Go ahead and upgrade GHC on the Travis setup, and let me know whether you want to try to persist the sandbox. If not, I'll do some build rework.
I think it's worth having a mostly-reproducible environment, now that we've figured out a way to get it. I know it will make you more comfortable. :-)

(The current sandbox is 108M.)


UglifyJS (part of vue-cli webpack template) fails on vuedraggable.js

$ npm run build
...
ERROR in static/js/vendor.52d13b282ee5b836d061.js from UglifyJs
SyntaxError: Unexpected token: operator (>) [./~/.2.0.3@vuedraggable/src/vuedraggable.js:18,0]
$

The resulting vendor.js is not uglified/minified.

Tanks for pointing this out. This is fixed in version 2.0.4!


Typo in the No commits message

Description & motivation

Tiny typo papercut
Changes:

"what data"  should be "when data"
Checklist:

[x] My pull request follows the guidelines in the Contributing guide?
[x] My pull request does not duplicate any other open Pull Requests for the same update/change?
[x] My commits are related to the pull request and do not amend unrelated code or documentation.
[x] My code follows a similar style to existing code.
[ ] I have added appropriate tests.
[ ] I have updated or added relevant documentation.

ugh, merge conflicts, can you start the PR again from https://github.com/specklesystems/speckle-sharp/tree/release/2.10 instead, please?


How to change selected item??

Hi!
Thanks for a great wheelwidget! Looking forward to see the new version coming up!
I have a wheel constructed in onCreate like this:
final AbstractWheel BpmWheel = (AbstractWheel) findViewById(R.id.bpmWheel);
final NumericWheelAdapter bpmAdapter = new NumericWheelAdapter(this, 10, 300, "%02d");
bpmAdapter.setItemResource(R.layout.wheel_text_centered2);
bpmAdapter.setItemTextResource(R.id.text);
BpmWheel.setViewAdapter(bpmAdapter);
BpmWheel.setCurrentItem(pos);
How can I change the pos outside the onCreate??
I am trying to call BpmWheel.setCurrentItem(pos) in another method but AndroidStudio mark it like error...
Sorry if this is a dumb question....I am rather new at programming.

/**
* Scroll the spinnerwheel
*
* @param itemsToScroll items to scroll
* @param time          scrolling duration
*/
public void scroll(int itemsToScroll, int time) {
int distance = itemsToScroll * getItemDimension() - mScrollingOffset;
onScrollTouched(); // we have to emulate touch when scrolling spinnerwheel programmatically to light up stuff
mScroller.scroll(distance, time);
}
The above function will call when you calling setCurrentItem(pos) .
getItemDimension() Returns base dimension of base item — width for horizontal spinnerwheel / height for vertical.
In onCreate method the view does not get measured completely. So it return 0 always.
Use handler to set current item after few seconds like below
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
BpmWheel.setCurrentItem(pos);
}
}, 50);


Modelling stateful C-APIs with no struct/class equivalence.

Hi there @hgarrereyn. Super exciting cutting-edge technology you have built here! Thank you very much for open-sourcing it.
I have a simple stateful C-API:
static int g_state;

void setState(int state) {
    g_state = state;
}

void run(void) {
    if (g_state == 123) {
        assert(0);
    }
}

If setState(123) and afterwards run() is invoked, the assert gets triggered.
I played around a bit and tried to come up with a schema.yaml for it:
struct_buggy_api:
  type: struct
  name: buggy_api
  c_headers: [buggy_api.h]
  static_methods:
  - void setState(int state);
  - void run();

Schema generation with gfuzz gen cpp works, but running the fuzzer afterwards produces following error:
[*] Loading: schema.json
[*] GraphFuzz: loading trees from cache...
[!] No initializer tree for type: "buggy_api" (type: 0)
[!] No finalizer tree for type: "buggy_api" (type: 0)
[*] After validation: total scopes: 4
[*] After validation: usable scopes: 3
[!] Schema is invalid. (Run with "--graphfuzz_ignore_invalid" to continue with usable scopes).

So if I understand correctly, it has no way of creating a "buggy_api" type. But the static functions don't really need one.
What would be a correct way of modelling this API? I would very much like your guidance.

Hey, thanks so much for trying out GraphFuzz!
Your use case is definitely right on the edge of what GraphFuzz is designed to do. The issue (as you figured out) is that these pure global functions effectively have no inputs and outputs and therefore GraphFuzz doesn't know how to link them together.
In the wild, most "global" C endpoints we encountered still required some context object; for example in sqlite3 api, you need to pass a sqlite3 * to the sqlite3_db_config endpoint. Those types of global endpoints are still bounded by the lifetime of the provided objects and so we don't see this problem.
In this case, we just need to define a fake "global context" object that GraphFuzz can use to understand how endpoints are allowed to be linked together. There are a few different ways to do this. I think the easiest way is to define a helper C++ header file with a struct that just proxies our APIs:
api_helper.h
extern "C" {
    #include "buggy_api.h"
}

struct GlobalContext {
public:
    GlobalContext() {}
    void _run(void) { run(); }
    void _setState(int state) { setState(state); }
};

Then we can define our schema.yaml like the following. Importantly, because libFuzzer is doing in-memory fuzzing and we have persistent global state, we need to reset the state each iteration so that our test cases are deterministic. GraphFuzz lets you define a few "hooks" which run at certain points, one of which is the initializer hook as you can see below: (I think this is currently missing from the documentation but I will add it soon)
schema.yaml
config:
  type: config
  # Invoked before every test case. Reset global state so each
  # test case is deterministic.
  initializer: |
    setState(0);

struct_GlobalContext:
  type: struct
  name: GlobalContext
  headers: [api_helper.h]
  methods:
  - GlobalContext()
  - ~GlobalContext()
  - void _run();
  - void _setState(int);

You can imagine all of the graphs we will generate like this will be linear.  So effectively it accurately models how we expect to be able to use the global endpoints (invoke them in any order).
I was able to find the test crash with this harness:
#28090	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 597 rss: 478Mb L: 1920/3953 MS: 1 Custom-
#28327	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 602 rss: 478Mb L: 1896/3953 MS: 3 ShuffleBytes-Custom-CustomCrossOver-
#28477	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 593 rss: 478Mb L: 1054/3953 MS: 5 CustomCrossOver-CustomCrossOver-Custom-CustomCrossOver-CustomCrossOver-
#28803	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 600 rss: 478Mb L: 872/3953 MS: 1 CustomCrossOver-
#29372	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 599 rss: 478Mb L: 910/3953 MS: 5 CustomCrossOver-CrossOver-Custom-CustomCrossOver-CustomCrossOver-
#29383	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 599 rss: 478Mb L: 690/3953 MS: 1 CustomCrossOver-
#29422	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 600 rss: 478Mb L: 868/3953 MS: 6 CustomCrossOver-ChangeBit-Custom-ShuffleBytes-Custom-CustomCrossOver-
#29468	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 601 rss: 478Mb L: 2080/3953 MS: 1 CustomCrossOver-
#29561	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 603 rss: 478Mb L: 436/3953 MS: 4 CustomCrossOver-CopyPart-Custom-CustomCrossOver-
#30292	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 593 rss: 478Mb L: 266/3953 MS: 1 CustomCrossOver-
#30703	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 590 rss: 478Mb L: 3625/3953 MS: 1 Custom-
#30773	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 591 rss: 478Mb L: 1240/3953 MS: 6 CustomCrossOver-CrossOver-Custom-CustomCrossOver-CustomCrossOver-CustomCrossOver-
#30826	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 592 rss: 478Mb L: 542/3953 MS: 3 CustomCrossOver-CustomCrossOver-CustomCrossOver-
#31377	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 592 rss: 478Mb L: 2074/3953 MS: 1 CustomCrossOver-
#31757	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 599 rss: 478Mb L: 1890/3953 MS: 9 ChangeBinInt-Custom-ChangeBinInt-Custom-ChangeBit-Custom-ChangeBit-Custom-Custom-
#31794	REDUCE cov: 12 ft: 91 corp: 43/39Kb exec/s: 588 rss: 478Mb L: 536/3953 MS: 3 CopyPart-Custom-Custom-
fuzz_exec: ./buggy_api.h:12: void run(): Assertion `0' failed.
==29== ERROR: libFuzzer: deadly signal
    #0 0x523c09 in __sanitizer_print_stack_trace (/harness/in/fuzz_exec+0x523c09)
    #1 0x434106 in fuzzer::Fuzzer::CrashCallback() (/harness/in/fuzz_exec+0x434106)
    #2 0x43415f in fuzzer::Fuzzer::StaticCrashSignalCallback() (/harness/in/fuzz_exec+0x43415f)
    #3 0x7fa092c6997f  (/lib/x86_64-linux-gnu/libpthread.so.0+0x1297f)
    #4 0x7fa092280e86 in __libc_signal_restore_set /build/glibc-uZu3wS/glibc-2.27/signal/../sysdeps/unix/sysv/linux/nptl-signals.h:80
    #5 0x7fa092280e86 in gsignal /build/glibc-uZu3wS/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:48
    #6 0x7fa0922827f0 in abort /build/glibc-uZu3wS/glibc-2.27/stdlib/abort.c:79
    #7 0x7fa0922723f9 in __assert_fail_base /build/glibc-uZu3wS/glibc-2.27/assert/assert.c:92
    #8 0x7fa092272471 in __assert_fail /build/glibc-uZu3wS/glibc-2.27/assert/assert.c:101
    #9 0x55498e in run (/harness/in/fuzz_exec+0x55498e)
    #10 0x5550f0 in GlobalContext::_run() (/harness/in/fuzz_exec+0x5550f0)
    #11 0x554d5c in shim_2 (/harness/in/fuzz_exec+0x554d5c)
    #12 0x558071 in LLVMFuzzerTestOneInput (/harness/in/fuzz_exec+0x558071)
    #13 0x434847 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) (/harness/in/fuzz_exec+0x434847)
    #14 0x43f0b4 in fuzzer::Fuzzer::MutateAndTestOne() (/harness/in/fuzz_exec+0x43f0b4)
    #15 0x44071f in fuzzer::Fuzzer::Loop(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, fuzzer::fuzzer_allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (/harness/in/fuzz_exec+0x44071f)
    #16 0x42fadc in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) (/harness/in/fuzz_exec+0x42fadc)
    #17 0x4229a2 in main (/harness/in/fuzz_exec+0x4229a2)
    #18 0x7fa092263c86 in __libc_start_main /build/glibc-uZu3wS/glibc-2.27/csu/../csu/libc-start.c:310
    #19 0x422a19 in _start (/harness/in/fuzz_exec+0x422a19)

and this minimized down (gfuzz min) into the following test case:
#include "api_helper.h"

#define MAKE(t) static_cast<t *>(calloc(sizeof(t), 1))

int main() {
    GlobalContext *var_0;
    {
        var_0 = MAKE(GlobalContext);
        GlobalContext ref = GlobalContext();
        *var_0 = ref;
    }
    GlobalContext *var_1;
    {
        var_0->_setState(123);
        var_1 = var_0;
    }
    GlobalContext *var_2;
    {
        var_1->_run();
        var_2 = var_1;
    }
    {
        free(var_2);
    }
}

Hopefully this helps answer you question (and hopefully in the future we can do more of this type of global api wrapping automatically)! If you are interested in applying GraphFuzz to a larger API surface or mixing global endpoints and stateful endpoints, I'd be happy to try to help figure out the best way to do that.

Hey, thank you very much for your in depth response.
I totally agree that most API have some sort of context that goes with it. I kinda figured that a helper is needed. Thank you for your solution, it worked flawlessly!
I really really love the flexibility of the schema with its exec. Because of it I was able to come up with following alternative schema.yaml for my contrived API:
struct_buggy_api:
  type: struct
  name: globalContext
  c_headers: [buggy_api.h, globalContext.h]
  methods:
  - globalContext():
      outputs: [globalContext]
      exec: |
        setState(0); // reset state
  - ~globalContext():
      inputs: [globalContext]
      exec: |
        // pass
  - void setState(int state):
      inputs: [globalContext]
      args: [int]
      outputs: [globalContext]
      exec: |
        setState($a0);
  - void run():
      inputs: [globalContext]
      outputs: [globalContext]
      exec: |
        run();

with an additional globalContext.h:
typedef struct {
    int dummy;
} globalContext;

Besides the need for exec, do you see any drawbacks with such a schema?
Since you mention undocumented parts, you probably already know, but following is not documented:

type: config in schema
graphfuzz_try() and graphfuzz_bail() functions
libFuzzer extra arguments --graphfuzz-<opt>

Awesome, that's a totally valid approach! In fact, that sort of thing is what I was going to suggest originally but wasn't sure if it would be more confusing. But it seems like you've really embraced the exec model which is cool to see! I also like how you are enforcing state reset inside the globalContext constructor.
I don't see any efficiency differences w.r.t using a C++ GlobalContext struct or doing that manually with custom endpoint definitions like you have so I think it's really a stylistic preference. It's a bit hard for me to judge this early which format will be easiest to apply to existing projects (and comfortable enough for developers to actually maintain it). Certainly there's also room for some syntactic sugar automation here given how boilerplate the globalContext structure is.
And I'll definitely follow up on the documentation front, thanks for pointing out the missing parts!


Support building XCFramework and cleanup

platform :ios, '9.0'
plugin 'cocoapods-binary'

use_frameworks!
all_binary!
+ use_xcframework!

target 'demo' do

  pod 'Masonry'

end

TODO

[ ] Supports LLDB
[ ] Supports dSYM

Hi,
Thanks for your work!
Do you still work on this PR?

Hi,
Thanks for your work!
Do you still work on this PR?

@azilbershtein
Hi, I'm sorry. I could not get how to handle dSYM files in creating an archive.
We have 2 TODOs to get this feature.

Supports LLDB
Supports dSYM

Actually, I don't have much time to continue to do this.
I'd like to get anyone's help.

@azilbershtein
Hi, I'm sorry. I could not get how to handle dSYM files in creating an archive.
We have 2 TODOs to get this feature.

Supports LLDB
Supports dSYM

Actually, I don't have much time to continue to do this.
I'd like to get anyone's help.

Big news,
I'm working on here.
Turns out, I'm working on here
https://github.com/muukii/cocoapods-frost


[NG] default wizard page id

Default page id should only taken place by absence (not undefined) of @Input("id").
Fixes #783

@mathisscott I made cherry-pick of your PR in #829 for the TDD specs

I'm closing this PR because it's a duplicate of one we already have approved.


Retroactive Trait compostion

We keep re-inventing the wheel and reusing the same patterns over and over. This causes code duplication, increases the risk of inconsistencies, leads to pointless arguments and make it more difficult to maintain our code.
FormField is an especially egregious example of this. If we had had a bit more foresight we could have use Trait composition to achieve the same results. Fortunately, there's nothing in semver (as far as I know) that prevents us from retroactively using traits as long as our method signatures stay consistent.
This would also make it easier for third party devs to re-implement those patterns for their own use cases. Might want to match all of this with intrefaces as well.
Possible traits
These could be good candidates for being extracted to traits.
HTMLAttributes
Allows an object meant to be rendered out as HTML to define attributes. This could be use on:

FormField
CMSMenuItem
ImageManipulation.

Methods

getAttributesHTML
getAttributes
getAttribute
setAttribute

ExtraClass
Allows an object meant to be rendered out as HTML to manage CSS classes that should be applied to it. This could be use in:

Form
FormField

Methods

setupDefaultClasses
extraClass
addExtraClass
removeExtraClass
hasClass

Template
Allows a ViewableData to manage its templates. This could be use in:

Form
FormField
RSSFeed
GridFieldDetailForm_ItemRequest

Methods

getTemplate
setTemplate
getTemplates

Pull requests

[ ] https://github.com/silverstripe/silverstripe-framework/pull/10033 (Just the attributes HTML bit)

The Loaders and Manifest have the same problem.
Loader
Used by the kernel to load information about files in a manifest. This could be used in

ClassLoader
ModuleLoader

Methods

inst
getManifest
hasManifest
pushManifest
popManifest
countManifests
init

Manifest
Used by the kernel or the a Loaders to find/register files. This could be used by:

ClassManifest
ModuleManifest
ThemeManifest

Methods

init
regenerate

Properties

$base
$cacheKey
$cacheFactory
$cache

be careful getting stuck into the manifests / class loaders. whilst it in theory has push and pop manifests and implied inheritence, in reality it doesn't actually work that way as I found to my peril.
An approach I wanted to take to the class manifest a while ago was to be able to "push" classes into it just for tests (so we could create a mock in PHPUnit and then push that manifest into the class loader so that it would then be available via Injector and so on... Nope, that doesn't work, because the manifests don't inherit as implied. Much time wasted and I realised that making it work as implied would also be a huge effort and probably break how things actually work at the moment

@dhensby The Manifest/Loader bit while working on https://github.com/silverstripe/silverstripe-framework/issues/10146
I agree there's not much value reinventing the manifest wheel. I do think it's worth pointing out that all the methods I've listed are literally copy-pasted across multiple files. So we are repeating the same pattern, without explicitly defining it as an interface or trait.
We don't provide a means for people to define their own manifest implementations. So if we did define a manifest trait/interface, it would only help core developers by making things a little bit clearer.


Release 2.3.0

The release has been postponed. To avoid unnecessary changes in release, I created a separate release branch and created a new draft PR.


feat: set_default for Animation class

Overview: What does this pull request change?

Adds set_default class method to Animation class based on existing implementation for Mobject class.

Motivation and Explanation: Why and how do your changes improve the library?

Addresses issue #3142
Links to added or changed documentation pages

Further Information and Comments

Reviewer Checklist

[ ] The PR title is descriptive enough for the changelog, and the PR is labeled correctly
[ ] If applicable: newly added non-private functions and classes have a docstring including a short summary and a PARAMETERS section
[ ] If applicable: newly added functions and classes are tested

Hello, thanks for sending a PR for this feature :)
Off of a quick look, the implementation seems fine (I'll take a closer look, hopefully later today). Would you mind adding some tests for this behavior?
Thanks for helping make Manim better :sparkle:
P.S. Don't worry about the pre-commit failure. We'll fix that in a different PR.

Just tested and it works for me! A simple test to add would be something like
def test_animation_set_default():
    s = Square()
    Rotate.set_default(run_time=100)
    anim = Rotate(s)
    assert anim.run_time == 100

Other than that, looks good to me :)

Thanks for reviewing and suggesting this test! I'll get this added shortly. :+1:


traefik: wait for marathon before starting (smlr)

[x] Installs cleanly on a fresh build of most recent master branch
[x] Upgrades cleanly from the most recent release
[x] Updates documentation relevant to the changes (n/a)

fixes #1073

LGTM!

smlr packaging is actually not quite right... we are ending up with /usr/bin/smlr_0.0.1_linux_amd64 instead of just /usr/bin/smlr

waiting on https://github.com/asteris-llc/mantl-packaging/pull/66

merged https://github.com/asteris-llc/mantl-packaging/pull/66

@sehqlr ready to test.
the problem it solves is intermittent so just verify that the traefik* services are healthy in consul after a build and that there is an entry for smlr in the traefik logs. Something like:
sudo journalctl -lu traefik
...
Mar 22 20:49:07 ip-10-1-2-98.ec2.internal smlr[6827]: time="2016-03-22T20:49:07Z" level=info msg=update done=true message="service available"
...

LGTM! :boat:


[How to use] How to get a list of only user-created albums

Platforms
iOS
Description
I would like to know how to get a list of only user created albums.
In iOS,
PHAssetCollectionType:PHAssetCollectionTypeAlbum,
PHAssetCollectionSubtype: PHAssetCollectionSubtypeAlbumRegular
I think I could get it by specifying.
Since PHAssetCollectionSubtype is specified as PHAssetCollectionSubtypeAny for this library, non-albums created by the user are also retrieved.
Is it possible to retrieve a list of only user-created albums by setting the filterOption of photo_manager?
My code
 final paths = await PhotoManager.getAssetPathList(
    type: RequestType.video,
    filterOption: FilterOptionGroup(
      videoOption: FilterOption(needTitle: true),// Filter???
    ),
  );

Try do it
No response

Is AlbumRegular not included in Any?


Installing twa blocks notification permission

Describe the bug
Calling window.notification.permission after installing the twa of a web app returns "denied".
If the twa is uninstalled, it returns "default"
To Reproduce
Steps to reproduce the behavior:

Call window.notification.permission, it'll return "default"
Install the twa
Call window.notification.permission, it will return "denied"

Expected behavior
It should return "default"

What version of Android are you on?
When a TWA is installed, we delegate notifications to the Android app - so if the user enables or disables the notification settings in the Android app, it will show as enabled or disabled in the TWA. Since the default in Android is to grant a newly installed app the notification permission, installing a TWA should enable notifications for the website.

What version of Android are you on?
When a TWA is installed, we delegate notifications to the Android app - so if the user enables or disables the notification settings in the Android app, it will show as enabled or disabled in the TWA. Since the default in Android is to grant a newly installed app the notification permission, installing a TWA should enable notifications for the website.

It's android 9
When i install the twa,  the permission in the browser is blocked by default

That is weird - what do you see if you go into the Android settings for the TWA and check the notification permission?
Also, does anything change once you launch the TWA?

That is weird - what do you see if you go into the Android settings for the TWA and check the notification permission?
Also, does anything change once you launch the TWA?

This is what i see from Android settings for the twa

Nothing changes when i launch the twa

Do you mind sharing a copy of your APK?

Do you mind sharing a copy of your APK?

Please check the apk file below
app-release.apk.zip

What browser (and version) and version of Android are you using? I installed your TWA on my test device (Android SP1A.210429.0005.A2 and Chrome 93.0.4523.0) and after launching your TWA, the notifications for poweroil.mcpl.ng were set to enabled.

What browser (and version) and version of Android are you using? I installed your TWA on my test device (Android SP1A.210429.0005.A2 and Chrome 93.0.4523.0) and after launching your TWA, the notifications for poweroil.mcpl.ng were set to enabled.

I am using Android 9; Redmi Note 7 Build/PKQ1. 180904.001 and Chrome 90.0.4430.91


feat: Collect metrics in the environment and build monitor dashboard

Description
Support collecting related metrics (cpu/gpu/memory/disk) and demonstrate it to users

Message from the maintainers:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.

I think we could do a exporter. But we need to have a good design. Because I think we should reduce the difficulty for users to ananlyze the data but could know what he could do to improve the effiency or progress in a look.
Another thing I cared about is that should we also monitor the model or computing flow in the application users runs?

Sure. We're considering something like a probe, that can also be integrated with the existing observability platform.
For the second question, what kind of monitoring are you referring to?

Let me state it clearly.
For the first quesion, I think we should better also provide a simple all-in-one index such as a user's computing device is busy or free.
For the second question, I developped some tools like Jaeger to trace our machine learning application's work flow.

For a app running in envd, could we provide a python agent or sidecar to detect the computiing ops in some famlilar framework. Or we just offer a standard format and display the computing operator flow but users could develop the probe to find the computing graph for the framework they are using.

@aseaday I think generating a computation graph from a running application is still an open problem, which cannot be done in a non-intrusive way. An alternative way is probably using nsight system to collect running metrics (we can provide envd script for this), that user can see the execution time of each operator. Does this work in your scenario?

Nsight works for me but seems a little complex for ordinary data scientist like our target audience. Maybe we should have a talk with our target users. What they want to learn from a minitor?

Yep, we can. But I am not sure if they can tell us about it. They may not know what metrics are helpful for them too.

Some research: https://github.com/tensorchord/envd/issues/218

Some research: #218

agent is better for general purpose use.

I thought we should a better design for how to preprocess and show the metrics to the users. Otherwise, it is not meaningful to give a grafana.

Yep, I think so. We need a proposal for the feature.

I will write the proposal and do basic exporter this week.

why not do our jobs based on the https://github.com/prometheus/node_exporter?

Good question. I am thinking a lot about observability during work on top command. We could divided the metrics tools into there types:

frontend: grafana and top
intermiddiate layer: promotheus or some simple memory storage
backend: collectors like exporter
Expoter is a good mechinism in promotheus environment. Buf for envd users, a hard problem is that:
How much effort it cost to run and learn a grafana or promotheus
Our users may only need a few simple indicators and quickly know the processing status. So the hard part is not how to collect all metrics as many as possible. It is about:
What metrics are important to envd users
How  to show them easily
Hope it could be helpful for you about why I give up the exporter when writing top.

@aseaday thanks so much for the quick reply! I totally get your point for writing a brand new top for envd.
but Prometheus stack also has some attractive advantages, like:

metrics history
UI would be much more user-friendly
extendability with many exporters already existed

the main concern is that it may cost too many resources and the learning curve, but
we have a proposal for k8s https://github.com/tensorchord/envd/pull/303, it may be a good choice if we have an existed Prometheus and Grafana to use.
what's more, we are considering the Observability https://github.com/tensorchord/envd/issues/151, then I long time storage like prometheus would be much more useful

@zwpaper @gaocegege
Before we introduce prom into our user flow. The cost and method of bootstrap prom should be considered. Should we start a prom docker daemon? And where the prom should be running. We know our users may don't develop apps on server and close their compute/laptop off work. It is also something prom may be not designed for.
As for exporter, I support exporter as a metrics collector inside the container for indicator can't be collected from the container runtime endpoint. Otherwise,  we should merge the exporters from all containers and export a unified exporter or auto register to prom. But for k8s runtime, I am not sure the latter could be possible for runtime like k8s.

actually, it we do not care about the HA part, which a dev env should be ok without HA, a prom could be easily run with one command. the resources cost would sometimes be a problem, but if we consider the use case, that users run there envs in cloud or shared a bear metal, the cost may become not that heavy.
as for exporter part, exporter is designed to be low cost, it should be ok to run one in each container, and this would make the problem easy to solve.
PS, a brain storm came up, should envd develop something like docker-compose to create multiple containers in a time😂

we may need our own exporter.

@gaocegege totally agree, this is why I said that built one based on node exporter.

BTW, @aseaday althought I focused on the prom part, top is great! and it should wlways be one of the tools we present to users.
just thinking about can we do something more.

BTW, @aseaday although the discussion focused on the prom part, top is great! and it should always be one of the tools we present to users.
just thinking about whether can we do something more.

the current framework is open to use prom. But we could add prom daemon in bootstrap first.

I can handle the prom related, but we must stay on the same page before starting.
I will open a proposal later to describe and discuss how we do prom

@zwpaper Maybe we can discuss it further in discord to make sure that we are on the same page.

I would recommend https://github.com/VictoriaMetrics/VictoriaMetrics as a way to store the metrics.
But I'm still not very sure if all the metrics we need can be stored in a way like Prometheus.

I think it should be push-based in envd. I do not know if prom push-gateway is mature now.

@zwpaper Would you mind joining our discord and discuss it in #envd-dev?

https://discord.com/invite/KqswhpVgdU

PS, a brain storm came up, should envd develop something like docker-compose to create multiple containers in a timejoy

It works if the "sidecar" container shares the same PID namespace with the envd containers. Then we can get the process info in it.

Also related to #13

Wow! @kemingy thanks so much for bringing VictoriaMetrics/VictoriaMetrics, it really seems to be a great project and a good replacement for prom!

It is the whole landscape I think the envd need. There are some point need to watch out.

As @kemingy said, there is not only time series numberic data to be collected. The data may like graph to describe the computing flow shoud also be considered.
I still think we could give a analytic result for users to know simplily such as the disk IO is slower and influence the overall performance so we need a analytics feature too.


Allow filtering on queue, task path and exception type using regex from dashboard

We cannot interpret the parameters as a regex all the time. If the usecase is mainly "*", I'd prefer looking for that character in each parameter and building a custom regex only then

This is indeed the main use case, I updated accordingly.
Thanks


Add GitLab Cookie Cutter usage in Project Creation

After #11 is complete, add the automation for applying a Cookie Cutter against the GitLab project.

@gmr closed by https://github.com/AWeber-Imbi/imbi/pull/59 ?


new modal tagging dialog means I can't copy/paste a previously used tag

I do this quite often when a task is going to stretch over multiple pomodoros, but I can no longer get to the text of the page to copy the previously used tags.

you're right.
I have a similar problem: I'd like to use same tags for more than one tomato even without copy/paste
I think the best solution would be to implement a tag input tumblr-like

Yes, auto-complete would rawk :)

going back to this - the problem's not just when adding the tomato - the new format blocks copy of anything under the sliding timer as long as it's running.  it's a bigger problem when adding the tomato, and autocomplete would help that, but if I want to copy something under there at other times autocomplete doesn;t do it.
That said, if I interpret your intentions correctly Issue 28 will resolve this.

Defaulting the tags to the last used tags would mostly solve this problem for me.

@cori any suggestion? you're right about issue #28 workaround
@cwarden i'm doing it right away

with #28 being a workaround I don't think any additional work is worthwhile


cm^2 not copied correctly

cm2 not copied correctly
RESECTION_STATUS
It says cm2, can it be changed?

This appears to be an issue with the data coming from the onto server

This is an issue between text and format.  Unicode symbol's hex code for square symbol, that is 00B2.  Could be addressed either in the dictionary or on translation.  To type it into Together hold down the Alt key and type 0178 on the numeric keypad.  We may have a larger "units of measure" issue to address where descriptions include units.

Need to be able to assign Likin to this one. We will both need to do some testing. Suggest we mop this up with other "special characters"

Have checked our corresponding DITA outputs...we do use  around the 2

Also noted - the information is held within the transformed txaclass files too -> e,g, Less than 1.5 cm2

U+00B2
²
0178
²
Superscript two
0114

U+00B3
³
0179
³
Superscript three

Happy with either the Unicode characters above, or the  tags.  Resection Status has cm2 a couple of times in the value set.

Let's go with unicode fix. Assigning Likin.

Hi ,
A fix has been amde for this iisue and the item has been regenearted on ontoserver.RESECTION_STATUS

fixed


Fix unit tests for Bracket-push exercise

As per issue #436:

Change default import bracket to named import { bracketPush }.
Change all function calls in the test suite to bracketPush'
Change export statement of example.js from a default to a named export.

👍


[Locales] Added Hungarian language support

Hey! I stumbled upon this project on Reddit and I really like the conception!!!
I added Hungarian language hope you like it :D
Szívesen

Awesome. Please consider joining our Discord server, since we constantly add new strings to Hydra, it would be good to have someone with Hungarian knowledge in order to review translations.

FGBJFGJG

Hey! I joined the server, a little bit of recommendation, u should add a text channel for translators where the main language is english! Thanks for merging!

I joined the server my name is @ferivoq


Added Shona language

Added Shona language
ISO code - sn
Language - Shona
My Account Number :  046d2a581df1fc47b7b3258839227e5a725fd7d9053625cfffc8b6ee29f18be0

@vipuluthaiah The translation is incorrect according to Google.
Also, the alphabetical order is incorrect.


@gqty/cli npx compat?

Not sure what is needed, but it would be nice to try out the cli with something like:
npx -p @gqty/cli gqty generate https://beta.pokeapi.co/graphql/v1beta

or
npx @gqty/cli -- generate https://beta.pokeapi.co/graphql/v1beta

It's already compatible, try npx @gqty/cli generate https://graphql.anilist.co/.


[srcds] Workshop maps break ptero's status

Using srcds with workshop maps seems to break ptero's status.

Once started, there is noway to shutdown the server, only the kill button does a restart on the srcds.
Server is always displayed as starting even once started.
Manualy stopping the server through Docker also doesn't works, the container instantly restart.
Kill the container through docker does recreate a new one with the same bug.

Launch Options i used
-game csgo -console -usercon -port 27019 +ip <IP_ADDRESS> +net_public_adr xx.xx.xx.xx -strictportbind -steamcmd_script /home/container/steamcmd/runscript_update -steam_dir /home/container/steamcmd +game_type 0 +game_mode 1 +host_workshop_collection 810773843 +workshop_start_map 858617188 -authkey xxxxxxxxxxxxxxxxxxxxxxxx+sv_pure 0 +fps_max 0 -maxplayers_override 11 -tickrate 128 +sv_setsteamaccount xxxxxxxxxxxxxxxxxxxxxxxxxx -autoupdate -norestart

I already checked /srv/daemon/src/services/srcds/main.json and the startup sequence is ok.
There is a 'known bug' about the -norestart option that has been discussed in #270 so maybe it's related, not sure.
I'll try to dig more about this but wasn't able to find any useful info atm.

we have the same bug/error using following startup-parameters for csgo with duels:
./srcds_run -game csgo +hostname SERVERNAME +host_workshop_map 125438255 +workshop_start_map 125438255 +host_workshop_collection<PHONE_NUMBER>2857351 -maxplayers_override 12 -port 27015 -ip <IP_ADDRESS> -tickrate 128 -usercon -retry +game_type 0 +game_mode 1 +mapgroup mg_bomb +bot_quota 0 +sv_hibernate_when_empty 0 -strictportbind +sv_setsteamaccount XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -authkey YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY -steam_dir /home/container/steamcmd/ -steamcmd_script script_autoupdate.txt -autoupdate -norestart
if we use the parameters for csgo with retake, its working:
./srcds_run -game csgo +hostname SERVERNAME +map de_dust2 -maxplayers_override 7 -port 27017 -ip <IP_ADDRESS> -tickrate 128 -usercon -retry +game_type 0 +game_mode 1 +mapgroup mg_bomb +bot_quota 0 +sv_hibernate_when_empty 0 -strictportbind +sv_setsteamaccount XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -autoupdate -steam_dir /home/container/steamcmd/ -steamcmd_script script_autoupdate.txt -autoupdate -norestart


Release 5.2.0 failed to be published on NPM

Hello,
Last release 5.2.0 is failed to be published on NPM
Yesterday NPM suffer a small incident, and it seems that at least v5.2.0 package released has been affected.
https://status.npmjs.org/

As you can see dist folder is missing.
https://www.npmjs.com/package/serverless-newrelic-lambda-layers/v/5.2.0?activeTab=code

So, whenever we try to install the package, the missing dist folder is not available.

It would be great if you can re-publish the package on npm.
Thanks

@chaudharysaket this is probably because this project is now using the reusable workflow our team maintained. It doesn't do a npm run build before publishing which appears to be needed for this project


date type is not serialized properly

currently when date is stored on store, the date is directly JSON.stringify and loss the type info, require special care (like manually cast before using the variable) in every related function.
Could the date being properly serialized before sending to client ? or let user provide a serialize/deserialize function, and make storing custom type be possible ?

The store data is serialized by Vue-ssr, I don't think it's related to Nuxt.

But not only store data is affected. :/
https://github.com/nuxt/nuxt.js/blob/333e3cf13aeaa76b5c6d28e3994820ae0fd0fd64/lib/render.js#L109
Here the data is serialize by serialize(..., { isJSON: true }) which just acts like JSON.stringify(). which means $data is not properly serialized.
And currently there is no way I can do some transform work before Nuxt.js bootstrap itself. (so I can serialized and unserialized date properly and then give it to nuxt.js)
I think there maybe two solution to this problem:

replace serialize-javascript with some libs handling date right
provide a hook function and let user do the transform (make sure the required lib is loaded before the bootstrap.)

The first should be easy, the latter is more extensive and make it possible to store some different types of data.

https://github.com/nuxt/nuxt.js/blob/f317b70fd5be57924195efd028610621cc0eb9bb/lib/core/renderer.js#L343
@alexchopin Could you please provide a method to toggle isJSON when serialize, or read the value from the nuxt.config.js ? it seems need this need least change and can fix current problem.