Data hosting

Closes #33
Sample projects
I added some sample WAZP projects to be used for testing, examples and tutorials on an external data repository.
Our hosting platform of choice is called GIN and is maintained by the German Neuroinformatics Node.
GIN has a GitHub-like interface and git-like CLI functionalities.
Project organisation
The projects are stored in folders named after the species - e.g. jewel-wasp (Ampulex compressa).
Each species folder may contain various WAZP sample projects as zipped archives. For example, the jewel-wasp folder contains the following projects:

short-clips_raw.zip - a project containing short ~10 second clips extracted from raw .avi files.
short-clips_compressed.zip - same as above, but compressed using the H.264 codec and saved as .mp4 files.
entire-video_raw.zip - a project containing the raw .avi file of an entire video, ~32 minutes long.
entire-video_compressed.zip - same as above, but compressed using the H.264 codec and saved as .mp4 file.

Each WAZP sample project has the following structure:
{project-name}.zip
    └── videos
        ├── {video1-name}.{ext}
        ├── {video1-name}.metadata.yaml
        ├── {video2-name}.{ext}
        ├── {video2-name}.metadata.yaml
        └── ...
    └── pose_estimation_results
        ├── {video1-name}{model-name}.h5
        ├── {video2-name}{model-name}.h5
        └── ...
    └── WAZP_config.yaml
    └── metadata_fields.yaml

Note
To learn more about how the sample projects were generated, see scripts/generate_sample_projects in the WAZP GitHub repository. I thought to "save" the scripts in this repository, in case we need to produce more sample projects from different datasets in the future.

Fetching projects
To fetch the data from GIN, we use the pooch Python package, which can download data from pre-specified URLs and store them locally for all subsequent uses. It also provides some nice utilities, like verification of sha256 hashes and decompression of archives.
The relevant funcitonality is implemented in the wazp.datasets.py module. The most important parts of this module are:

The sample_projects registry, which contains a list of the zipped projects and their known hashes.
The find_sample_projects() function, which returns the names of available projects per species, in the form of a dictionary.
The get_sample_project() function, which downloads a project (if not already cached locally), unzips it, and returns the path to the unzipped folder.

Example usage:
>>> from wazp.datasets import find_sample_projects, get_sample_project

>>> projects_per_species = find_sample_projects()
>>> print(projects_per_species)
{'jewel-wasp': ['short-clips_raw', 'short-clips_compressed', 'entire-video_raw', 'entire-video_compressed']}

>>> project_path = get_sample_project('jewel-wasp', 'short-clips_raw')
>>> print(project_path)
/home/user/.WAZP/sample_data/jewel-wasp/short-clips_raw

Local storage
By default, the projects are stored in the ~/.WAZP/sample_data folder. This can be changed by setting the LOCAL_DATA_DIR variable in the wazp.datasets.py module.
Adding new projects
Only core WAZP developers may add new projects to the external data repository.
To add a new poject, you will need to:

Create a GIN account
Ask to be added as a collaborator on the WAZP data repository (if not already)
Download the GIN CLI and set it up with your GIN credentials, by running gin login in a terminal.
Clone the WAZP data repository to your local machine, by running gin get SainsburyWellcomeCentre/WAZP in a terminal.
Add your new projects, followed by git add, and git commit, just like you would with a GitHub repository. Make sure to follow the project ornanisation as described above. Don't forget to modify the README file accordingly.
Upload the commited changes to the GIN repository, by running gin upload. Latest changes to the repository can be pulled via gin download. gin sync will synchronise the latest changes bidirectionally.
Determine the sha256 checksum hash of each new project archive, by running sha256sum {project-name.zip} in a terminal. Alternatively, you can use pooch to do this for you: python -c "import pooch; pooch.file_hash('/path/to/file.zip')". If you wish to generate a text file containing the hashes of all the files in a given folder, you can use python -c "import pooch; pooch.make_registry('/path/to/folder', 'hash_registry.txt').
Update the wazp.datasets.py module on the WAZP GitHub repository by adding the new projects to the sample_projects registry. Make sure to include the correct sha256 hash, as determined in the previous step. Follow all the usual guidelines for contributing code. Additionally, you may want to update the scripts in scripts/generate_sample_projects, depending on how you generated the new projects. Make sure to test whether the new projects can be fetched successfully (see fetching projects above) before submitting your pull request.

You can also perform steps 3-6 via the GIN web interface, if you prefer to avoid using the CLI.
Using sample projects in tests
I think the best way to do that is through pytest fixtures.
For example, I've added one in tests/test_unit/conftest.py:
from pathlib import Path

import pytest

from wazp.datasets import get_sample_project

@pytest.fixture()
def sample_project() -> Path:
    """Get the sample project for testing."""
    return get_sample_project("jewel-wasp", "short-clips_compressed", progressbar=True)

This gets the smallest sample project and returns its local path, to be used in tests.

Codecov Report

Merging #100 (fdb7c1c) into main (4a7dcbb) will increase coverage by 2.85%.
The diff coverage is 94.73%.

@@            Coverage Diff             @@
##             main     #100      +/-   ##
==========================================
+ Coverage   39.94%   42.79%   +2.85%
==========================================
  Files          12       13       +1
  Lines         691      729      +38
==========================================
+ Hits          276      312      +36
- Misses        415      417       +2

Impacted Files
Coverage Δ

wazp/datasets.py
94.73% <94.73%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

The tools in scripts/generate_sample_projects are all untested. Is it worth or feasible to do a dry run of them as part of a testing job? Either tack to the end of the current or a new workflow.

I thought about it, and this would actually, be very hard to do, as things stand. The main reason is that these samples are sourced from our non-public internal server storage. So they cannot "really" be tested without access to that source (which the GitHub runners can't have). Downloading the test data on GIN only gives you the output of this pipeline, the input is inaccessible.
Of course we still have some options, we could:

rewrite the scripts to work with already publicly available animal behaviour datasets
access the source data via our locally hosted GitHub runner
only test smaller parts of the scripts with unit tests, as much as we can without the source data (no end-to-end testing)

Since all the above require considerable work, and this is not a priority right now, I opened an issue for future reference.

Since all the above require considerable work, and this is not a priority right now, I opened an issue for future reference.

Apart from the above, I took care of all smaller comments, so I'm going ahead with the merge 🤞🏼
Thanks a ton @samcunliffe!

🍉


Modified Array.prototype.toLocaleString to use the length of the internal slot for TypedArray.

Modified Array.prototype.toLocaleString to use the length of the internal slot for TypedArray. Added tests for different types of typed arrays. Also, added a test to ensure that the normal array behavior has not changed after this change.

Hi @atulkatti, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Atul Katti). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

@Microsoft/chakra-developers

Would you mind squashing your commits together when you update?

Can we put a reference to the issue this fixed?

echo @tcare
See: https://help.github.com/articles/closing-issues-via-commit-messages/


Make renderer publicly available (i.e., remove @internal markers)

closes #208
prerequisites:

[x] branch is up-to-date with the branch to be merged with, i.e. develop
[ ] build is successful
[x] code is cleaned up and formatted
[ ] tested with Firefox 52, Firefox 57+, Chrome 64+, MS Edge 16+

Summary

Remove @internal marker from Renderer, which makes them publicly available in the .d.ts files

@sgratzl and @thinkh : I've removed the @internal markers, however the build is failing. I don't think that this is caused by this PR or at least I'm not sure.
I found a similar problem here https://github.com/Microsoft/TypeScript/issues/5711 and in this issue they state that we need more explicit type annotations
can one of you fix the type annotations if they are really causing our problem because I don't really know where to start at the moment

I just noticed that LineUp v3 is using an older version of the lineupengine.
LineUp v3:
https://github.com/lineupjs/lineupjs/blob/85df597de875fc986e258df0c4d11fdfd5f72b24/package.json#L141
LineUp v4:
https://github.com/lineupjs/lineupjs/blob/0cfa2223b38980db5cd24c491d15a6b751938c07/package.json#L149
I don't know the changes between lineupengine v1 and v2. Hence, as @lehnerchristian suggested, we might need to change/add some typings over there.

I just noticed that LineUp v3 is using an older version of the lineupengine.

on purpose since lineupengine v2 is designed to work with lineup v4

@lehnerchristian Is this done from your side?

@thinkh , looks good as far as I can tell after this long time

what are the use cases again for exporting all renderers? In case of overriding them, most implement just the three factory functions, so in case one subclasses that, one doesn't gain much. Moreover, an alternative would be use just wrap one instance of an renderer with another one. Similar to the toolbar one can have access to all the registered renderers using the defaultOptions
e.g.
const base = defaultOptions().renderers.number;

...
renderers: {
 'mynumber': {
    title: 'mynumber',
    canRender: base.canRender.bind(base,
   create: base.canRender.bind(base),
   createGroup: base.canRender.bind(base),
}

or
const base = defaultOptions().renderers.number;

class MyNumberR extends base.construtor {
...
}

@sgratzl I understand your point that a renderer exposes only three methods and it might not be worth the opening. However, to me your suggested example looks like a different implementation pattern and unfamiliar if one is used to TypeScript where you can just import and extend a class or implement an interface. Furthermore, as a developer I would never guess that I can override or define a renderer like you suggested and would rather browse the API documentation.
@lehnerchristian and @puehringer Could you do the implementation in your app with the defaultOptions() that @sgratzl suggested? What are your opinions?

@sgratzl @thinkh I indeed didn't know about these ways of renderer access/extensions. I will try to refactor the current implementation and check if it is more convenient this way.
I still do not fully get why exporting them is not a more viable solution, as we also export the corresponding models too. I understand not exporting certain helper functions, but unique classes don't seem to be much of an issue?

I also didn't know / think of these ways. I'll try them too
however while this const base = defaultOptions().renderers.number; gives us an instance of the renderer we need and base.constructor gives us the class itself what's the difference to exporting the renderer class itself in the first place?

Models are complex objects with various methods and business logic. Renderers are simple and since it is a flat export of lineupjs it is already getting pretty big. Moreover, when I think about it, there is no need to have proper classes for renderers after all, since they are singleton instances and usually no inheritance.
So, the more I export "officially" the less I can change in the future. like the call the base renderer in a composition style is easier than using it as a base class.

as a compromise one could expose them under a sub namespace. e.g. all the builder helper functions and classes are exported under the .builderAdapter namespace.

@sgratzl Your compromise sounds like a plan. I'm not sure at the moment how to implement this. Can you provide an example of the namespace?

e.g. as in https://github.com/lineupjs/lineupjs/blob/master/src/builder/adapter/index.ts

@sgratzl @thinkh I think the exporting in a certain namespace is a good idea, as I am currently facing some issues porting apps to lineup#v4. As already discussed, some functions were annotated with @internal, causes them to be not accessible.
Some of these functions however are very essential (for advanced use-cases) such as:
Toolbar Utilities
https://github.com/lineupjs/lineupjs/blob/lineup-v4/src/ui/toolbar.ts#L362-L373
https://github.com/lineupjs/lineupjs/blob/lineup-v4/src/ui/toolbar.ts#L376-L403
CategoricalColumn
https://github.com/lineupjs/lineupjs/blob/lineup-v4/src/model/internalCategorical.ts#L146-L160
...
These are just some functions which are used in apps and cannot be easily accessed/replicated. Implementing them on our own is not just a waste of resources, but also error prone and sometimes even impossible like here.
I absolutely agree with you that we should not think export first, regret later, but certain functions such as getToolbarDialogAddons and isCategoryIncluded are essential and will most likely not change.
Do you think it would be possible to (selectively) export functions in their particular namespace?

please open another issue or lets discuss that in person. I don't want to discuss things that are not PR related in a PR since the PR will be closed when it is merged.

@sgratzl For the specific exports I will create separate tickets of course, but I was just listing a few examples supporting the namespace idea discussed above.
Re: discussing things in person, what is your preferred way of contacting you? I think Github issues are good for summaries, but might not be the most efficient option.

@sgratzl I reverted the @internal comments and exported the renderer classes and util functions in ./src/renderer/index.ts. Please review if this is what you meant?

@sgratzl If you are fine with the changes, you can proceed and merge this PR.


Should bbconf be renamed to bbagent ?

Me and @donaldcampbelljr thought, what if bbconf will be renamed bbagent to have similar standard naming (like pepdbagent)?
Additionally, it will be easier to distinguish bbclient and bbconf

Probably not. bbconf is parallel to refgenconf. I guess to standardize we could rename pepdbagent to pepdbconf, since the 'conf' name has precedence.


Kubernetes 1.21 Release Cycle

Monday, January 11th: Week 1 - Release cycle begins
Tuesday, February 9th: Week 5 - Enhancements Freeze
Tuesday, March 9th: Week 9 - Code Freeze
Wednesday, March 24: Week 11 - Test Freeze
Wednesday, March 31st: Week 12 - Docs must be completed and reviewed
Thursday, April 8th: Week 13 - Kubernetes v1.21.0 released

Full release cycle calendar is available at https://github.com/kubernetes/sig-release/tree/master/releases/release-1.21

Docs PR: https://github.com/kubernetes-sigs/descheduler/pull/537

Thanks @seanmalloy, here's also a pre-bump to rc.0: https://github.com/kubernetes-sigs/descheduler/pull/539

We may want to wait for the kind 1.21 image to be available before publishing the release (thanks for pointing that out @seanmalloy). This way our CI can run at least once to verify we are all good on the new version, and we can test that in @ingvagabund's e2e refactor pr https://github.com/kubernetes-sigs/descheduler/pull/535
In the meantime, here are the draft release notes:
Container image for this release is available at: `k8s.gcr.io/descheduler/descheduler:v0.21.0`

The Helm chart for this release is published [here](https://github.com/kubernetes-sigs/descheduler/releases/tag/descheduler-helm-chart-0.20.0).

## New Features :rainbow:
* #468 Run as user 1000 so pod can be runAsNonRoot for security purposes @eatwithforks
* #474 Add a parameter to include soft topology spread constraints @lixiang233
* #481 Add option to ignore pods with PVCs from eviction @damemi
* #480 Add nodeSelector to cronJob helm chart @damemi
* #495 Update Job and CronJob YAML to run as non-root @seanmalloy
* #496 Update Helm Chart to run as non-root @seanmalloy
* #499 Bump To Go 1.15.8 @seanmalloy
* #510 Filter pods by labelSelector @lixiang233
* #505 Collect metrics @ingvagabund
* #521 Enable ARM32v7 Container Image Builds @seanmalloy
* #523 Added EvictSystemCriticalPods flag to descheduler @RyanDevlin
* #434 Support extended resources in LowNodeUtilization @ZongqiangZhang
* #547 Bump To k8s 1.21.0 @seanmalloy

## Bug Fixes :bug:
* #484 Fix TopologySpread bug that evicts non-evictable pods @damemi
* #493 Modify resourceUsage.Value() to resourceUsage.MilliValue() @fancc
* #497 LowNodeUtilization: unit test resourceUsagePercentages to validate percentages are computed correctly @ingvagabund
* #498 Fix indentation in values.yaml @kristinnardal2
* #512 Bump github.com/gogo/protobuf to v1.3.2 @ingvagabund
* #490 Add default logging-format value @damemi
* #517 Correct log in topology spread strategy @lixiang233
* #525 (TopologySpread) Evict pods with selectors that match multiple nodes @damemi
* #526 Correct Helm Chart Docs For Container Requests and Limits @seanmalloy
* #543 e2e_test: fix goroutine leak @gaurav1086
* #544 LNU: improve nodeUsage logging @ingvagabund

## Others :running:
* #471 refactor: remove unused code @Mathew857
* #478 Update README.md @ryuichi1208
* #482 Add Logging field to v1alpha1 componentconfig @damemi
* #502 Move 'total pods evicted' log message to main loop @damemi
* #504 Log and README optimization for LowNodeUtilization @lixiang233
* #506 Update e2e tests to use kind v0.10.0 @seanmalloy
* #515 Clarify resource percentage calculation in README @damemi
* #518 Add table of contents generator/verify script @damemi
* #520 Document That Descheduler Considers StatefulSets For Eviction @seanmalloy
* #534 Use Tags In Kustomize Documentation @seanmalloy
* #507 Add verify scripts for make gen to run during PR @pravarag
* #545 Add verify script for deep-copies generator @pravarag
* #546 Add diagram of strategies @ingvagabund
* #548 Updating policy api version used in pod evictor @lx1036
* #537 Update Docs and Manifests for v0.21.0 @seanmalloy
* #535 E2e refactor @ingvagabund

Looks like the current release of kind(0.10.0) is not able to create a k8s 1.21 cluster. We might need wait one or two weeks for the next kind release. See https://github.com/kubernetes-sigs/kind/issues/2189 for details.

Update: the kind release is getting closer (https://github.com/kubernetes-sigs/kind/issues/2024#issuecomment-842844076). We can probably start opening the PRs to update our CI, they won't work yet but once the image is published then it should just be a /retest to get them going!
Sorry for the delay to anyone who's been eagerly awaiting the latest descheduler release

Here are the PRs to add k8s 1.21 to CI:

https://github.com/kubernetes-sigs/descheduler/pull/570
https://github.com/kubernetes/test-infra/pull/22238


Mds 414 - Add Correlation Id Checks

@parkeradam  - do we need to update the docs for correlation id?

@parkeradam  - do we need to update the docs for correlation id?


no module names pyvjoy

can open vjoy while installed
= RESTART: C:\Users\beanz\Downloads\miniDjiController-master\miniDjiController-master\main.py
Traceback (most recent call last):
File "C:\Users\beanz\Downloads\miniDjiController-master\miniDjiController-master\main.py", line 6, in
import serial, pyvjoy, argparse
ModuleNotFoundError: No module named 'pyvjoy'

still need help

Make sure Pyvjoy is installed for the Python version you are using. The error is unrelated to this project.
https://docs.python.org/3/installing/index.html

Make sure Pyvjoy is installed for the Python version you are using. The error is unrelated to this project.
https://docs.python.org/3/installing/index.html

what version does it need to be?

Make sure Pyvjoy is installed for the Python version you are using. The error is unrelated to this project.
https://docs.python.org/3/installing/index.html

what version does it need to be?

Any higher than 1.0.1, as listed in the requirements.txt


🐛 [immich] Database backup wrong version

Description
immich addon version: 1.122.1-3
Built in database dump feature not working it seems script is looking for wrong DB version 15   but version 16 is builtin
root@db21ed7f-immich:/# ls -l  /usr/lib/postgresql
total 4
drwxr-xr-x 4 root root 4096 Nov 23 18:42 16
root@db21ed7f-immich:/# ls -l  /usr/lib/postgresql/16/
bin/ lib/

Reproduction steps
- Enable builtin database dump backup
- Wait for backup time
- Check logs

Addon Logs
[Nest] 1074  - 12/09/2024, 12:08:46 AM     LOG [Microservices:VersionService] Found v1.122.2, released at 12/8/2024, 8:50:55 PM
[Nest] 1074  - 12/09/2024, 2:00:00 AM     LOG [Microservices:BackupService] Database Backup Starting. Database Version: 15
[Nest] 1074  - 12/09/2024, 2:00:00 AM   ERROR [Microservices:Error: spawn /usr/lib/postgresql/15/bin/pg_dumpall ENOENT] Backup failed with error
[Nest] 1074  - 12/09/2024, 2:00:00 AM   ERROR [Microservices:Error: spawn /usr/lib/postgresql/15/bin/pg_dumpall ENOENT] Database Backup Failure
[Nest] 1074  - 12/09/2024, 2:00:00 AM   ERROR [Microservices:BackupService] Gzip exited with code 0 but pgdump exited with -2

Architecture
No response
OS
No response

Hi, I don't understand as I thought postgres wasn't built in and immich relied on an external container?

It seems that the immich container still has a postgresql client installed (as indicated in the description) and uses this client (specifically pg_dump) to run a backup of the database. But this command is really picky with versions, and the immich container has client v16 installed but the postgresql addon runs postgresql 15

I've tried to force the client to 15 to test. Was it working before though? It seems to dump a local folder which would be useless with an external database? Isn't it better to rely on backups of the postgres container to align with other methods of backups?

Was it working before though?

I personally haven't been using it for long but it's never worked for me.

It seems to dump a local folder which would be useless with an external database?

I still find it useful considering you can use that file with pg_restore on the database. See documentation.

Isn't it better to rely on backups of the postgres container to align with other methods of backups?

While I don't disagree, this is ultimately a feature of Immich that is broken. It's also worth noting that it'll only back up the immich database, not all of the postgres container. Considering Immich is the creator of the immich database, one could argue that it should also handle the backups.
On a more personal note, this database gets big with a lot of photos in Immich. I'm already at 500MB with ~300GB of photos. I'd like the option to move this backup to live alongside my photos (which has its own backup) and exclude it from my google drive backup so it's not taking up so much space.
And, this is just an opinion, but in general I think the client version should ideally match the database version.

I've modified references to postgres 16 in immich init script and forced installed the PostgreSQL 15 client. Does the latest version work?

Unfortunately it seems the amd64 build failed? 🤔
Can't install ghcr.io/alexbelgium/immich-amd64:1.122.1-3test3: 500 Server Error for http+docker://localhost/v1.47/images/create?tag=1.122.1-3test3&fromImage=ghcr.io%2Falexbelgium%2Fimmich-amd64&platform=linux%2Famd64: Internal Server Error ("manifest unknown")

I've pushed a v4 for which build succeeded please tell me how it goes!

It's working for me! Thanks so much!

Perfect! Thanks for the feedback


Update to Meteor 1.0.5.

Yep, still works. I'm kinda new to meteor so I forgot about that.

No problem :) Thanks for the PR.

:+1: no prob!


Do not try to destroy DNSRecord when Namespace is terminating

/area quality
/kind bug
Fixes #5553
Release note:

An issue causing Shoot deletion to fail in a rare case when the corresponding Shoot Namespace in the Seed is already terminating is now fixed.

/assign


Foreign key constraints not generated when models are in incorrect order (many-to-many)

When UserRole mapping table model is last, foreign key constraints are not generated

However, when UserRole is not last (i.e. first or second), fk constraints are generated

Are you able to provide the model definitions?

Hi @3mm4nuel There is a bug in GORM, so if you defined Customize JoinTable, you should pass it before the structs that has the many to many annotation.

Hello! I had the same issue and hopefully I found this thread. However I cannot seem to make the use case fully work.
The Gorm Customize JoinTable documentation seems to say that you can add extra columns to the join table i.e. columns that are not the many2many FK however when I add extra columns  and generate the migration, those columns are not generated. If I take the above example i.e. those models:
type User struct {
    ID    string  `gorm:"primarykey;column:id;"`
    Name  string  `gorm:"column:name;"`
    Roles []*Role `gorm:"many2many:UserRole;foreignKey:id;references:id;constraint:OnUpdate:CASCADE,OnDelete:CASCADE"`
}

type Role struct {
    ID          string  `gorm:"primarykey;column:id;"`
    Description string  `gorm:"column:description;"`
    Users       []*User `gorm:"many2many:UserRole;foreignKey:id;references:id;constraint:OnUpdate:CASCADE,OnDelete:CASCADE"`
}

type UserRole struct {
    Coucou string `gorm:"column:coucou;"`
    UserID string `gorm:"primarykey;column:UserID;"`
    RoleID string `gorm:"primarykey;column:RoleID;"`
}

and generate a migration with :

  func main() {
      stmts, err := gormschema.New("postgres").
         Load(
             &postgresql.UserRole{},
             &postgresql.User{},
             &postgresql.Role{},
        )
      if err != nil {
          fmt.Fprintf(os.Stderr, "failed to load gorm schema: %v\n", err)
          os.Exit(1)
      }
      io.WriteString(os.Stdout, stmts)

I get:
-- Create "roles" table
CREATE TABLE "roles" (
    "id" text NOT NULL,
    "description" text NULL,
    PRIMARY KEY ("id")
);
-- Create "users" table
CREATE TABLE "users" (
    "id" text NOT NULL,
    "name" text NULL,
    PRIMARY KEY ("id")
);
-- Create "user_roles" table
CREATE TABLE "user_roles" (
    "role_id" text NOT NULL,
    "user_id" text NOT NULL,
    PRIMARY KEY ("role_id", "user_id"),
    CONSTRAINT "fk_user_roles_role" FOREIGN KEY ("role_id") REFERENCES "roles" ("id") ON UPDATE CASCADE ON DELETE CASCADE,
    CONSTRAINT "fk_user_roles_user" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON UPDATE CASCADE ON DELETE CASCADE
);

Am I missing something? Thank you so much!

Hey @jeandeducla, thank you for reaching out. I noticed that you're using Customize JoinTable but haven't set it up yet. It's a required step for GORM to recognize your JoinTable. We have an adapter for configuring it with the WithJoinTable option. Here is an example:
https://github.com/ariga/atlas-provider-gorm?tab=readme-ov-file#frequently-asked-questions

Thanks luantranminh! It's exactly what I was looking for. Sorry I did no see that part of the documentation.

@jeandeducla Hey, we've just released a new version of the provider that automatically sets up the Customize JoinTable. Your old code still works, we maintain backward compatibility 🎉. But the new one is more handy and seamlessly does all the jobs. If you feel interested, you can check it out with v0.5.0.
There is no need for the WithJoinTable option anymore.
func main() {
    stmts, err := gormschema.New("postgres").
       Load(
           &postgresql.UserRole{},
           &postgresql.User{},
           &postgresql.Role{},
      )
    if err != nil {
        fmt.Fprintf(os.Stderr, "failed to load gorm schema: %v\n", err)
        os.Exit(1)
    }
    io.WriteString(os.Stdout, stmts)
}


Remove trailing slash from --project/emailName in 'dist' task

Prevent trailing slash from being added to analytics tags

should be as easy as .replace(/\/$/, '')


TypeError: styled_components__WEBPACK_IMPORTED_MODULE_3__.div is not a function

Hi guys,
I noticed this error since version 5.2.1 (also happening in 5.2.2):
error node_modules/next-sanity/dist/studio/index.js (23:21) @ eval error TypeError: styled_components__WEBPACK_IMPORTED_MODULE_3__.div is not a function
It doesn't happen on version 5.2.0
Hope that helps.

Seems like the core issue were this: https://github.com/vercel/next.js/issues/53723


Dead links to package documentation

Both README.md and the "About" of this repository point to this URL, which is a 404. This is new, as the documentation was accessible a few weeks ago.

hey @yberreby the repo name was updated without the readme following suit, please use http://docusign.github.io/docusign-esign-node-client/ until it gets fixed


New package: Hrse v0.1.0

Registering package: Hrse
Repository: https://github.com/lukebemish/Hrse.jl
Created by: @lukebemish
Version: v0.1.0
Commit: e212ff38842917659eed991e585c6f14951a74cc
Reviewed by: @lukebemish
Reference: https://github.com/lukebemish/Hrse.jl/commit/e212ff38842917659eed991e585c6f14951a74cc#commitcomment-104655237

I've since realized that I forgot to get my tests working on the repo, so this can probably be closed for now; I'll re-release it once those are functional. My apologies.

HumanReadableSExpressions or HRSExpressions would both seem like good package names that would be compatible with the guidelines

Alright, thank you. If I am renaming the package (and so source repository), is there any odd behavior with Registrator I should be aware of?

Not that I'm aware off… but maybe check on #pkg-registration on Slack

Using JuliaRegistrator after a name change seems to create a new PR, as the package name has changed, which makes sense, so this one can now be closed


Replace DllImport with LibraryImport in engine

PR Summary
Replace usage of DllImport with LibraryImport in nativecommandprocessor and coreplatform abstraction.  Two DllImport was left because LibraryImport currently doesn't support marshalling custom types (planned for .NET 8) nor StringBuilder.
PR Context
LibraryImport generates source at build time whereas DllImport does at runtime so this offers a performance improvement.
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[x] N/A or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[x] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and opened an issue in the relevant tool repository. This may include:

[ ] Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode
(which runs in a different PS Host).

[ ] Issue filed:

[ ] Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.

[ ] Issue filed:

[ ] Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).

[ ] Issue filed:

[ ] Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

[ ] Issue filed:

I found 449 DllImport -s. Do you plan to update most of them? Maybe consolidate them in one class (only for SMA)?
Also we already used System.Native once. Maybe we can get rid of the PowerShell-Native at all?

@iSazonov my plan for dllimport is to convert them over time a few files at a time.  For SMA it probably makes sense to have them under a single NativeAPI type class, although to keep the changes simple for review, probably do that separately.  I would like to eventually get rid of PowerShell-Native completely, but again, that's a whole separate work item.  We should probably also review pinvokes to see which ones are no longer needed as .NET may already have it covered now.  This specific PR was just me wanting to test out the new LibraryImport

@iSazonov my plan...

You can engage me.


run_pyscf is broken

For instance, executing the example notebook gives the error
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-1-3cf684407860> in <module>
     35                          run_cisd=run_cisd,
     36                          run_ccsd=run_ccsd,
---> 37                          run_fci=run_fci)
     38
     39     # Print out some results of calculation.

~/Projects/OpenFermion-PySCF/openfermionpyscf/_run_pyscf.py in run_pyscf(molecule, run_scf, run_mp2, run_cisd, run_ccsd, run_fci, verbose)
    158             print("WARNING: RO-MP2 is not available in PySCF.")
    159         else:
--> 160             pyscf_mp2 = pyscf.mp.MP2(pyscf_scf)
    161             pyscf_mp2.verbose = 0
    162             pyscf_mp2.run()

AttributeError: module 'pyscf' has no attribute 'mp'

@sunqm Do you know what's up with this? Something strange that I found is that if I do
import pyscf
_ = pyscf.mp

I get the same error,
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: module 'pyscf' has no attribute 'mp'

However,
from pyscf import mp

works fine.

modules like mp, ci, cc are not exported at the package level. They need to explicitly imported from the pyscf package with "from pyscf import". I updated the import code in the PR.

closed by #41


Jupyterlab Workflows frontend plugin initial commit

What
Jupyterlab Workflows frontend plugin initial commit.
https://github.com/jupyter-server/jupyter-scheduler/assets/2791223/e1337903-1e51-40bf-9aa0-aa2157b85f82

Nice work @sathishlxg!!
This PR is our proposed solution to: https://github.com/jupyter-server/jupyter-scheduler/issues/411

Merging as confirmed by @sathishlxg.


Install tfautomv using asdf

It would be a good idea to provide tfautomv using the fabulous installer called asdf.
Doc aims to create a plugin : https://asdf-vm.com/plugins/create.html#create-a-plugin
Template below => https://github.com/asdf-vm/asdf-plugin-template
What do you think ?

I'm absolutely for it. The more ways to install it the better!
I'll have a look. Thanks for sharing the docs, that will save me some time :)

Done!
https://github.com/busser/tfautomv?tab=readme-ov-file#asdf

Awesome thanks a lot !


[PF-2375] Add retries with sleep to address test failures

Problem statement - propagation delays when a user is just granted access to an object result is 403 errors
Fix - Create a wrapper with http retries with sleep to retry the call
[in progress] multiple flaky tests

Handled in https://github.com/DataBiosphere/terra-cli/pull/373


Encode.withoutFieldNames to Dict Int String

I'm looking instead of
withoutFieldNames : (a -> List String) -> Encoder a
to
withoutFieldNames : (a -> Dict Int String) -> Encoder a
because I'm having following structure:
toDict a =
    [ ( 8, a.firstname )
    , ( 9, a.lastname )
    , ( 11, a.organization )

    --
    , ( 12, a.address )
    , ( 15, a.city )
    , ( 57, a.stateCode )
    , ( 18, a.countryCode )
    , ( 17, a.postcode )

    --
    , ( 51, a.email )
    , ( 52, a.phone )

    --
    , ( 47, a.type_ )
    , ( 22, a.services )
    , ( 21, a.weight )

    --
    , ( 37, a.note )
    , ( 38, a.labelNote )
    ]
        |> Dict.fromList

We can revert to List String simply by (List.indexedMap Tuple.pair) >> Dict.fromString
Great library!

Oh, that's interesting! So it seems like these things are true:

you have a very wide CSV
you don't care about most of the field names

Is that right? It might be useful to provide a sparser option in this case!

Yes, I just got set of fixed indexes for each field.
More I think about it, it's more of a edge case, and CSV is not ment to be used this way, so I'm going to close the issue, if you are interested, feel free to open it.
And I manage to use your library with following trick, so it is fine.
toList : Data -> List String
toList a =
    let
        dict : Dict Int String
        dict =
            a |> toDict

        end : Int
        end =
            dict |> Dict.keys |> List.foldl max 0
    in
    List.range 1 end
        |> List.map (\v -> dict |> Dict.get v |> Maybe.withDefault "")


[Bug] Check notifylisteners() is not working

Hi,
Documentaion says:

expect is an optional Map used to match the changes in the states of the provider. The key is the selector of the property to listen to. The value is the list of states or matchers to verify against the updates in the given property. Please be aware that updates are detected only if notifyListeners has been called.

But if i remove calling notifyListeners(); , listening changes in "expect" map are still checking anyway.
expect: {         (provider) => provider.value: [1], },
It's incorrect behavior. Please, fix this.

Hello. First off, sorry for the delayed response and thanks for contributing to this pub.
I will investigate today in the evening. Until then, can you provide a small example for what you are trying to achieve? It would be very useful for testing the library against a real scenario.


Add flexible info for additional client data

Currently data like GSTIN is fixed allow user to define additional client data.

Closed via 7d9395c0ce192549cab4f5a3fda97030252bd015


Cannot open BlockIO protocol exclusively for logical partitions

I am not sure if that is to be expected, an issue with uefi-rs or an issue with my setup but here is my problem:
I am writing a simple bootloader with uefi-rs (with the alloc feature) and I am testing it in QEMU with a .vdi (VirtualBox hard drive) mounted. I want to read ext4 partitions using an external crate and for this I need to access the partitions raw. I can list the handles supporting the BlockIO protocol but I can only open the protocol for handles that represent entire disks (rather than logical partitions). This is my minimal code example:
fn main() -> Status {
    uefi::helpers::init().unwrap();
    let _ = system::with_stdout(|stdout| stdout.clear());

    for disk_handle in find_handles::<DiskIo>().unwrap() {
        unsafe {
            match boot::open_protocol::<BlockIO>(
                OpenProtocolParams {
                    handle: disk_handle,
                    agent: image_handle(),
                    controller: None,
                },
                boot::OpenProtocolAttributes::Exclusive,
            ) {
                Ok(scoped_block_prot) => {
                    let block_io = scoped_block_prot.get().unwrap();
                    println!(
                        "{disk_handle:?} is logical partition: {}",
                        block_io.media().is_logical_partition()
                    )
                }
                Err(error) => {
                    println!("Could not open BlockIO protocol for {disk_handle:?} : {error}")
                }
            }
        }
    }

    Status::SUCCESS
}

This produces output like:
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: false
Could not open BlockIO protocol for Handle(0xxxx) : UEFI Error INVALID_PARAMETER: ()
Handle(0xxxx) is logical partition: false
Could not open BlockIO protocol for Handle(0xxxx) : UEFI Error INVALID_PARAMETER: ()
Could not open BlockIO protocol for Handle(0xxxx) : UEFI Error INVALID_PARAMETER: ()
Could not open BlockIO protocol for Handle(0xxxx) : UEFI Error INVALID_PARAMETER: ()

I know the handles I cannot open are for logical partitions because it works when I change boot::OpenProtocolAttributes::Exclusive to boot::OpenProtocolAttributes::GetProtocol. Then I get this output:
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: true

Another observation I made is that after running my code above I cannot call find_handles::<DiskIo>() again because it will just block forever as if the handles are still occupied or something. This does not happen when I open the protocols using boot::OpenProtocolAttributes::GetProtocol.
Finally, I can open the BlockIO protocol for my logical partitions using the following code:
for handle in find_handles::<PartitionInfo>().unwrap() {
        match open_protocol_exclusive::<BlockIO>(handle) {
            Ok(_) => println!("BlockIO opened for {handle:?}"),
            Err(error) => println!("BlockIO for {handle:?} not opened: {error}"),
        }
    }

Producing output like:
BlockIO opened for Handle(0xxxx)
BlockIO opened for Handle(0xxxx)
BlockIO opened for Handle(0xxxx)
BlockIO opened for Handle(0xxxx)

Combining this code with the code from above I can confirm that these are the very same handles that could not be opened previously.
Again, I am not sure if this is to be expected or potentially an issue but I hope I could give you enough info to tell.

I just found out that reversing the list of handles allows me to open all of them exclusively. This code:
fn main() -> Status {
    uefi::helpers::init().unwrap();
    let _ = system::with_stdout(|stdout| stdout.clear());

    let mut handles = boot::find_handles::<DiskIo>().unwrap();
    handles.reverse();

    for disk_handle in handles {
        unsafe {
            match boot::open_protocol::<BlockIO>(
                OpenProtocolParams {
                    handle: disk_handle,
                    agent: boot::image_handle(),
                    controller: None,
                },
                boot::OpenProtocolAttributes::Exclusive,
            ) {
                Ok(scoped_block_prot) => {
                    let block_io = scoped_block_prot.get().unwrap();
                    println!(
                        "{disk_handle:?} is logical partition: {}",
                        block_io.media().is_logical_partition()
                    )
                }
                Err(error) => {
                    println!("Could not open BlockIO protocol for {disk_handle:?} : {error}")
                }
            }
        }
    }

    boot::stall(100_000_000);

    Status::SUCCESS
}

Output:
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: true
Handle(0xxxx) is logical partition: false
Handle(0xxxx) is logical partition: false

This indicates to me that exclusively opening a protocol on the "root" handle of the disk (the one with logical partition: false) also locks the "children" handles but dropping the ScopedProtocol for the "root" handle does not release the locks on the children. This is why trying to exclusively open a protocol on a child handle fails afterwards. If we reverse the list of handles we open the children handles before opening the root handle and so we don't run into the problem.
So this is probably a bug in uefi-rs.

The locking provided by OpenProtocolAttributes::Exclusive is not implemented by uefi-rs, but rather is part of the firmware. See EXCLUSIVE in  https://uefi.org/specs/UEFI/2.10/07_Services_Boot_Services.html#efi-boot-services-openprotocol
So while it is possible there's a bug in uefi-rs, I think more likely you are seeing firmware behavior.
For disk operations, I would actually recommend not opening in exclusive mode. I've observed on real hardware that this can be quite slow, taking almost one second for the firmware to finish doing whatever cleanup is necessary to provide exclusive access.

Thanks for your response. I think you are right, this is a problem with OVMF.


DEPRECATED

Mark this repo as deprecated.
Having to build and deploy a web service for the sole purpose of capturing access keys ONCE is the most ridiculous thing I've heard of in a long time.
An API is supposed to be for automation.  A windows service should only need to be given an access key once, and never again, to run quietly in the dark without human intervention for years.
If that's good enough for my credit card processor, it's good enough for QBO.
Someday I hope you all wise up and get rid of that Redirect URL nonsense.

I share the same point of view, that's amazing their web all they way show that they are poor programmers who can't build a secure tunnel by themselves!

Mark this repo as deprecated.
Having to build and deploy a web service for the sole purpose of capturing access keys ONCE is the most ridiculous thing I've heard of in a long time.
An API is supposed to be for automation. A windows service should only need to be given an access key once, and never again, to run quietly in the dark without human intervention for years.
If that's good enough for my credit card processor, it's good enough for QBO.
Someday I hope you all wise up and get rid of that Redirect URL nonsense.


null-pointer access and crash in coro::mutex::unlock() during stress test

Crashes in line
to_resume->m_awaiting_coroutine.resume();
because m_awaiting_coroutine is nullptr. But the operation is not created with a nullptr.
Possible cause: The member m_awaiting_coroutine is set too late in the function
coro::mutex::lock_operation::await_suspend()
It is set after adding the operation to the list, which seems wrong to me.
Greetings, Jørn

this is happening in the existing tests? or did you add some new ones?

pushed a patch fix so hopefully this fixes it.  Nice find! thanks for reporting

My stress test does no longer crash and the fix makes sense to me, I consider this solved.


Corruption of Item Data when a hopper pushes into a toolbox - Dupe

Describe the Bug
I think a video illustrates this best (below), but in short, if I place a hopper on top of a toolbox and then very quickly throw many different items into the hopper, some items appear to be getting transformed into other items that were in the hopper. My guess would be that this is related to the custom storage slots that can go up to 256, and to zero without loosing the item assigned.
Do note that whenever an item converts, the type of item that got lost in the conversion to another (e.g. when dirt turned into nether star, the dirt) did not get a permanent slot assigned in the toolbox. When I shift click out all the items, all others keep a zero stack, but that particular one does not. This may be related to the cause of the issue here.
Testing in a modpack:
https://github.com/Fabricators-of-Create/Create/assets/56313836/7ced5cfc-3559-49b6-8f07-ff1962e26cc6
Testing in a minimal modset, only create fabric and mc
https://github.com/Fabricators-of-Create/Create/assets/56313836/03c7c017-277c-460f-a19c-691c37d6370a
https://github.com/Fabricators-of-Create/Create/assets/56313836/9365b4a0-835c-48fb-8fa7-6d5d6ed914c2
And here's a log from the minimal modset:
7iexZoi.txt
Reproduction Steps
see videos
Expected Result
no items should be converted
Screenshots and Videos
see above
Crash Report or Log
7iexZoi.txt
Operating System
Win10
Mod Version
0.5.1f
Minecraft Version
1.20.1
Other Mods
No response
Additional Context
No response

Also, does not only work with hoppers, but any other form of item input. Tested with chutes, and all items were converted to 1 type.


Add function for getting thumbnail batches.

Closes #152
Added the ability to retrieve thumbnails in batches. In order to accomplish this I had to add the ability to have different Endpoint Types and Endpoint Formats. As per the Dropbox documentation the thumbnail batch endpoint uses the Content endpoint, but it requires the RPC format (which is typically used by the regular API). Including the Dropbox-API-Arg header throws an error for this endpoint. So I added an additional optional argument for endpointFormat. By default it matches the endpointType, but added a function to make a call to the Content API with the RPC format.
I did it this way in an attempt to reduce the amount of impactful changes where possible. Instead of changing postToContent which would require modifying a lot of calls to that function, I created a new function to use this difference - postToContentAsRpc.
Let me know if you'd like it done in a different way. This is a feature I require in my current project to be able to use this package. I'm having to use a patch until this gets implemented.

Hey, thanks for the pull request! It really helped me!
When a .zip file is in the list of files, I get the following:
PHP Warning:  Undefined array key "metadata" in /Dropbox/Models/ThumbnailList.php on line 30
PHP Warning:  Undefined array key "thumbnail" in /Dropbox/Models/ThumbnailList.php on line 30
PHP Fatal error:  Uncaught TypeError: Kunnu\Dropbox\Models\File::__construct(): Argument #1 ($data) must be of type array, null given, called in /Dropbox/Models/ThumbnailList.php on line 30 and defined in /Dropbox/Models/File.php:30


Added support for serializable objects with RxPreferences

Serializable objects can now be persisted via RxPreferences. This addresses ticket #12 . Unit test case has been added to validate the changes.

@soarcn can you let me know how soon this change can be integrated and pushed to maven? I'd love to integrated it asap. Thanks!

Hi @dragantl
Thanks for the PR
I did some changes base on your commit and pushed to master. You could expect it from Maven tomorrow.

@soarcn Thanks!


Use spaces instead of tabs

According to default style guide of Kotlin, it should be written with spaces.
For example, tabs are a bit inconsistent, if I copy a line with tabs and paste it somewhere else, it looks like this
						println("A call to chooseDirectorySwing failed ${swingException.message}")

and in spaces its like this
                        println("A call to chooseDirectorySwing failed ${swingException.message}")

and in Intellij it looks like this (with a bit of custom settings)

And in Vim or Emacs it will also be different.
So, lets follow default style guide and switch to spaces

Tab master race


[#time ..] always creates a timer

Right now, any time you use [#time ..] we create a timer under the covers to issue events that will cause your rules to fire, but in many cases we don't need the timer. For example, in chat.eve we just use the time to capture when a message is sent. Because that behavior relies on another event (keydown), we don't need to create a timer.

on a related note, flappy.eve requires that the framerate be hardcoded into the timer. if we want to keep the current model, this can be effected by hoisting a % into the [#time], but we should probably reconsider the whole approach

the "new input model" is supposed to address this cleanly, but the work isn't currently at the head


speed-pupil

Is there a way to capture the speed with which the pupil moves?

This is not currently implemented but you can add this feature.
You have to compute the derivative of the pupil radius (and add some filtering)

Can you give me a hand / inspiration from where to start?
thanks

Yeah. By the readme.md


[Feature Request] Use recursive environment variables in base env from child envs

Insomnia Version: 5.12.4
Operating System: Linux Fedora 4.13.16-202.fc26.x86_64

Details
I would like to be able to define a recursive env var in the base env, using variables from the child envs. My use case for this is to be able to define, for example, scheme, host, and port in the child envs, and define baseUrl using these values once only in the base env.
The environment editor actually allows this -- the Ctrl+space completion brings up the child env vars while editing the base env.
However, completion in the actual call definition does not bring up the base env variable as an option (which makes me think this might be a bug, not a feature request?).
Currently, I need to define baseUrl in every child env, with exactly the same definition in each.

Hi @rocketraman,
It should be working as you stated. I just tried it on my end with no issue. Be sure to make sure one of the sub environments is selected in the sidebar.
Base Environment
{
	"base_url": "{{ protocol }}{{ host }}"
}

Sub Environment
{
	"host": "insomnia.rest",
	"protocol": "https://"
}

@gschier I think I see the difference. If the value is nested, then it does not work. If it is a top-level value then it works fine. For example:
This works:
Base:
{
	"base_url": "{{ protocol }}{{ host }}"
}

But this does not:
Base:
{
	"foo": {
		"base_url": "{{ protocol }}{{ host }}"
	}
}

That's correct. Environments are joined together using a shallow merge so nested object overwrite each other.

That's correct. Environments are joined together using a shallow merge so nested object overwrite each other.

Aha! Ok, that is easily worked around by inverting the data structure i.e.:
Base:
{
	"baseUrls": {
		"foo": "{{ foo.protocol }}{{ foo.host }}"
	}
}

Perhaps this should present as a warning in the UX rather than a silent overwrite? Or even better, why not just do a deep merge? I believe the lodash merge function does that, doesn't it?


[SYSTEMML-1216] implement local svd (GPU version)

Add svd as local BuiltinUnary, (we've implemented CPU version as MultiReturnBuiltin, do we need to change this?)
tests are compared with cpu outputs.
cudamemcpy: little confusion here as to where I am storing the variables.

NOTE: I haven't tested the changes on my machine[no NVIDIA], need help regard to testing & logic correctness.

Refer to this link for build results (access rights to CI server needed):
https://sparktc.ibmcloud.com/jenkins/job/SystemML-PullRequestBuilder/2169/

Refer to this link for build results (access rights to CI server needed):
https://sparktc.ibmcloud.com/jenkins/job/SystemML-PullRequestBuilder/2170/

ping @nakul02 .

Due to some git versioning problems, for now, I am deleting my present fork & refreshing. Please bear w/ me. Thanks.


Edit css

I want to adjust the styling of the table, but I can´t find the CSS which is supposed to be added under wwwroot/dist
Where can I find it?

Have a look at the MatBlazor.Web project
https://github.com/SamProf/MatBlazor/tree/master/src/MatBlazor.Web/src
You'll need to compile the project yourself to produce the final assets after your changes. Each component has it's own Sass file which is then ultimately compiled into a CSS file. Find your component, edit it's Sass file and then build a production release to get the assets.

Read issue https://github.com/SamProf/MatBlazor/issues/479 so you can get the MatBlazor.Web project to build

Thanks,
I thought that the library added both files to my project without the need to recompile.

Hope that answered your question @UrizielTSD , I'm closing this issue as it seems solved. Please get back if you don't agree.

It´s not resolved yet,
I managed to set everything up and compile the Web Project.
But every compiled CSS produces this error in usage:

I even compiled without making any changes to the CSS, same result.
Workflow:
-> NPM Build
-> Build MatBlazor Lib
-> Execute Demo Server Side

Also, whenever I use the compiled MatBlazor bin in my project it result in this error:

But the Demo Project works just fine, only my project which includes the bin gets errors.

Hmm, yesterday I set up my environment to compile this as well. I ran into the CSS issue right away (eg. npm run build would fail with SASS errors). I followed the information on #479 and that worked for me. You have to remove node-sass and then modify the configuration of the webpack config and add webpackImporter: false to the options right beneath loader: "sass-loader". Once I did that the CSS issues went away.
My workflow would be make my modifications to the JS project and then build and run the matblazor-web project. It all worked for me fine.
@UrizielTSD can you confirm that is the workflow you are doing?

@frankhale
I did this workflow while setting the project up.
But the errors occur after compiling successfully the new CSS and using it in the demo project.
Does your compiled css/js work without any issue?

Does your compiled css/js work without any issue?

Yes the CSS/JS work without issue when I compile it and run matblazor-web.

@frankhale Did you try to run the Matblazor.demo.server/clientapp ?

I was testing with the MatBlazor.Web project.
I didn't run Matblazor.demo.server/clientapp

You should not have to rebuild MatBlazor just to update your CSS.  Refer to #88 for MatTable Styling classes
I just have my styles in  BlazorBoilerplate:  https://github.com/enkodellc/blazorboilerplate/blob/master/src/BlazorBoilerplate.CommonUI/wwwroot/css/site.css  then just make sure you add your custom css after the matblazor.css:
https://github.com/enkodellc/blazorboilerplate/blob/master/src/BlazorBoilerplate.Server/wwwroot/index_csb.html
With #527 and this information it should solve your issues.

Hopefully this helps:  https://github.com/SamProf/MatBlazor/wiki/How-to-Edit-the-css---scss-styles-for-MatBlazor


Remove all listeners when .off gets called without a type

fixes #70
> npm-run-all --silent clean -p rollup -p minify:* -s docs size

Gzipped Size: 194 B

friendly 🏓 is there anything left to do with this PR on my side?

friendly 🏓 😉

Probably just merge? There is no automatic release so it won't be published and you can use the master temporary until new eventual release.

@developit friendly 🏓 would love to see this published to ditch our fork 😉

@Andarist hey, sorry for the delay here.  One issue I can see with this:
If someone passes in a custom all object, it'll be overwritten when off() is called:
const myEvents = {};
const events = mitt(myEvents);
events.off();
events.on('foo', () => {});
myEvents.foo  // undefined

Hm, yeah - that's a possible downside of this. We can't fix it without iterating through the all object though and that would for sure exceed the byte budget for mitt.
OTOH I doubt there are many people relaying on all argument (although I'm one of them 🤣 - but I use it to implement .off on my own, so this PR would alleviate the issue for me).
Hard to tell what's best here - how useful all argument in reality is? What kind of use cases does it cover?
Ultimately it's your call here 😉

lol that was my thought too - "oh, people don't use this... except me lol".  Also there seem to have been a fair number of PR's that indicate people are relying on all.  I wonder.... how big would this be if we iterated?  It could be gzipped down to very little maybe..

.all property seems to me like a more clunky solution - might be a personal preference though.
I've tried deleting all properties:

with for-in = 214B
Object.keys + forEach = 214B
Object.keys + map = 208B

Maybe you could try to squeeze extra bytes out of it as you are expert in this area, but unfortunately I don't have any more ides how to do that 😢

@Andarist @developit I implemented two ways to fix this:

Expose the all property: #105
Add a clear() function: #104

Would be nice to get some feedback on this.

This was implemented in #124 and released in 3.0.0.


Stalled websocket connections

Hi there,
when I am testing, I do have to reboot the workers sometimes. While having 3 apps open, only one reconnects immediately, the two others receiving errors in the log "connection times out", connection was closed before established, and on Chrome Debugger, I can see that the connection got "stalled".
Why is this happening and why only when on WLAN? If I switch to LTE or 3G, this "stalling" never happens. Looks like this might be due to multiple devices using the same IP? I tried everything I could find on the net (changing keepalive on nginx, chaning TIME_WAIT features in sysctl.conf).
How can I prevent stalled connections (they need around 1-2 minutes for reconnecting).

@jondubois
having
net.ipv4.tcp_tw_recycle = 1

in my /etc/sysctl.conf caused the issue. Setting to 0 or removing fixed my problem. Finally no stalled connections.

@Hirbod was that on your nginx server?

Yes

Nginx is on the same machine as socketcluster


unable to download video and audio from npr

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2019.03.01. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2019.03.01

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[x] Question
[ ] Other

Description of your issue, suggested solution and other information
Trying to download this in high quality mp4 (with audio)  https://www.npr.org/2019/02/26/698086054/zaytoven-tiny-desk-concert with the but it doesnt work

PS C:\Dev\youtube-dl\master> py -2.7 .\youtube_dl\__main__.py https://www.npr.org/2019/02/26/698086054/zaytoven-tiny-desk-concert -F
[generic] zaytoven-tiny-desk-concert: Requesting header
WARNING: Falling back on generic information extractor.
[generic] zaytoven-tiny-desk-concert: Downloading webpage
[generic] zaytoven-tiny-desk-concert: Extracting information
[generic] RH7Ndvu5: Downloading m3u8 information
[info] Available formats for RH7Ndvu5:
format code  extension  resolution note
120          mp4        audio only  120k , mp4a.40.2
430          mp4        320x180     430k , avc1.77.30, mp4a.40.2
610          mp4        480x270     610k , avc1.77.30, mp4a.40.2
800          mp4        720x406     800k , avc1.77.30, mp4a.40.2
2010         mp4        1280x720   2010k , avc1.77.30, mp4a.40.2
4890         mp4        1920x1080  4890k , avc1.77.30, mp4a.40.2 (best)
PS C:\Dev\youtube-dl\master> py -2.7 .\youtube_dl\__main__.py https://www.npr.org/2019/02/26/698086054/zaytoven-tiny-desk-concert
[generic] zaytoven-tiny-desk-concert: Requesting header
WARNING: Falling back on generic information extractor.
[generic] zaytoven-tiny-desk-concert: Downloading webpage
[generic] zaytoven-tiny-desk-concert: Extracting information
[generic] RH7Ndvu5: Downloading m3u8 information
[download] Destination: Zaytoven - Tiny Desk Concert-RH7Ndvu5.mp4
ffmpeg version N-85653-gb4330a0 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 6.3.0 (GCC)
  configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
  libavutil      55. 61.100 / 55. 61.100
  libavcodec     57. 93.100 / 57. 93.100
  libavformat    57. 72.101 / 57. 72.101
  libavdevice    57.  7.100 / 57.  7.100
  libavfilter     6. 87.100 /  6. 87.100
  libswscale      4.  7.101 /  4.  7.101
  libswresample   2.  8.100 /  2.  8.100
  libpostproc    54.  6.100 / 54.  6.100
Input #0, hls,applehttp, from 'https://jwpsrv-vh.akamaihd.net/i/content/conversions/GlQS13rH/videos/RH7Ndvu5-31835933.mp4/index_0_av.m3u8?hdnts=exp=1551388291~acl=*/RH7Ndvu5-31835933.mp4/*~hmac=f4663cfc315250a50486bd9d943dde43073e20d4ae85202ac520c6e066246202':
  Duration: 00:11:36.73, start: 0.100511, bitrate: 0 kb/s
  Program 0
    Metadata:
      variant_bitrate : 0
    Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 24 tbr, 90k tbn, 48 tbc
    Metadata:
      variant_bitrate : 0
    Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp
    Metadata:
      variant_bitrate : 0
Output #0, mp4, to 'file:Zaytoven - Tiny Desk Concert-RH7Ndvu5.mp4.part':
  Metadata:
    encoder         : Lavf57.72.101
    Stream #0:0: Video: h264 (High) ([33][0][0][0] / 0x0021), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 24 tbr, 90k tbn, 90k tbc
    Metadata:
      variant_bitrate : 0
    Stream #0:1: Audio: aac (LC) ([64][0][0][0] / 0x0040), 44100 Hz, stereo, fltp
    Metadata:
      variant_bitrate : 0
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=16721 fps=292 q=-1.0 Lsize=  415419kB time=00:11:36.71 bitrate=4884.5kbits/s speed=12.1x
video:405167kB audio:9526kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.175009%
[ffmpeg] Downloaded 425388940 bytes
[download] 100% of 405.68MiB in 00:58

ok it worked for you but not for me


[Feature Request] --advanced flag for additional step options

Running 'go-blueprint create --advanced' would provide more options, but simply running 'go-blueprint create' would maintain the current steps: frameworks and database drivers. In this step, it would be nice if users had the option for multiple choices.
In the staging-2 branch, PR #108, which includes GitHub Action Templates for generated projects, has been merged. You can test this feature on this branch by implementing it with this PR.
There is also interest in HTMX/Templ support in issue #125, and for future-added features, multi-choice implementation is a great option to consider.
Disclaimer

[X] I agree

@briancbarrow This is yours if you want it; you already worked on this in PR #139

@Ujstor sounds good! I am hoping to have this ready soon. If the flag is not provided do we want to prompt the user if they want to add advanced features? Or have it go through the options only if the provide the flag?

You got it right, only if the flag is provided, a step like this one in the example is available. I believe this fourth prompt can be utilized for other features, such as a multi-choice option, although I'm not sure how to implement it.
It would be great to implement a non-interactive command, but that should be done step by step. If others are interested, they can contribute to the process. This is a substantial amount of work for one person. Please let me know how I can help

GG


Add some more perfunctory coverage of the frontend

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @paulmelnikow!

  Generated by :no_entry_sign: dangerJS against 87b2857f3aaef8a75d01c1ca3d7d3bedeb8e065d


[DO NOT MERGE] Test failures

Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Seed Job

Run Jpms Dataflow Java 11 PostCommit

Run Jpms Dataflow Java 17 PostCommit


[New Scenario] Los Vestigios del Odio

New scenario for MoM, hope you enjoy it!
Nuevo escenario para Mansiones, espero que os guste.
What kind of mission do you want to add (mark with an X, e.g. [X] Descent)?

[x] Mansions of Madness
[ ] Descent

What expansions does the scenario require?

[ ] Conversion Kit (CK)
[ ] First Edition (MoM1E) - Also Recurring Nightmares
[x] Fatal Alchemy (FA) - Also Suppressed Memories
[x] Call of the Wild (CotW) - Also Suppressed Memories
[ ] Beyond the Threshold (BtT)
[x] Streets of Arkham (SoA)
[x] Sunctum of Twilight (SoT)
[ ] Horrific Journeys (HJ)
[ ] Path of the Serpent (PotS)

What expansions can the scenario optionally use?

[ ] Conversion Kit (CK)
[ ] First Edition (MoM1E) - Also Recurring Nightmares
[ ] Fatal Alchemy (FA) - Also Suppressed Memories
[ ] Call of the Wild (CotW) - Also Suppressed Memories
[ ] Beyond the Threshold (BtT)
[ ] Streets of Arkham (SoA)
[ ] Sunctum of Twilight (SoT)
[ ] Horrific Journeys (HJ)
[ ] Path of the Serpent (PotS)

https://github.com/RealPolux/LosVestigiosdelOdio

Great! The premise is quite interesting!
@scrubbless or @antontimmermans, could you add it to Valkyrie?

I've added this to the scenario manifest.
@antontimmermans could you add this to the stat sheets when you get a chance please :)

Uploaded

added to statics files


Doesn't seem to be showing the download button

Tried restarting Chrome. When I do the testing, I start from https://pagespeed.web.dev/ enter the URL in the text box, and then press Analyze.
Chrome Version 107.0.5304.122 (Official Build) (64-bit) on Windows 10 21H2 (OS build 19044.2251)

Thanks for this, it looks like Google have changed the structure of the page so I'll have to tweak the plugin.


Cannot compile

Hi!
I've downloaded the code directly and using git clone with the same result. (step 1)
I've follow the steps:
2. dotnet restore: works ok
3. dotnet build: fails because can not find the CORE projects: swastika and swastika.Identity
Any idea?
regards,
David C.

Hi @mimenda2 , thanks for trying.
Please clone the Identity project from the following https://github.com/Swastika-IO/Swastika-IO-Identity and build again.
Or you can ref to Nuget https://www.nuget.org/packages/Swastika.Identity/
As we are still working on Identity features, we haven't pushed the latest version to Nuget yet.
Please try again and let me know if you still facing any issues.
Regards.

Hi Smilefounder,
I download the  Identity project from  https://github.com/Swastika-IO/Swastika-IO-Identity and the other core project from https://github.com/Swastika-IO/Swastika-IO-Heart
Now all the code compile ok
I run the app, using the Swastika.Cms.Web.Mvc as start project
App fails trying to connect to sql server database.
I have this connection string in the appsetting.json file:
"CmsConnection": "Server=<IP_ADDRESS>,4444;Database=starceramic_new;UID=sa;Pwd=k{+X$f=7K5@#TJsH;MultipleActiveResultSets=true",
regards,

Hi @mimenda2
Please pull code and update the connection string
"CmsConnection": null
Then run again and you will see the screen for input your connection string to init the Cms.
Sorry for the inconviniences,
Regards,
Hoang


Update ecdsa version

This helps when updating other libraries that also depend on ecdsa :)

Can you guys have a look please?

I don't have write access to this repo assign @veado


Fix a small typo in readme

Fuonts -> Fonts

Thanks!

wow, thanks to both of you, this is amazing I didn't even lift a finger 😂


WFP-750 get probation status

README needs updating as well if we still want the format of the CSV in there


Use Leaflet.Heightgraph to show PathDetails

This PR changes the elevation diagram library as proposed in #1177. If we want to merge this PR, I would like to first publish the library Leaflet.Heightgraph to NPM, this will make the PR cleaner (also see this issue).
One issue with Leaflet.Heightgraph is that it does not support a miles display yet, so the units are fixed to metric units. We could add this feature to Leaflet.Heightgraph though. I haven't studied the code of Leaflet.Heightgraph in detail yet, so I don't know how much work this would require.
The results are already pretty good, so I think this would be a nice addition :). Also the diagram itself has some nice little features included, for example you can toggle it's state from shown to hidden or highlight parts of the route that are above a certain elevation.
If you don't use any PathDetails, the resulting diagram will be a plain elevation diagram, similar to the old elevation diagram. If you add path details to the request (currently you need to add them to the url, for example add &details=average_speed&details=street_name), you can see the results of the path details in the diagram.

Really cool, thanks a lot!

Will try (and merge) on Monday latest.

Just a quick question: the elevation data is always shown implicitly, right? Or could we use the height of the diagram for integer based path details like average_speed?

Or could we use the height of the diagram for integer based path details like average_speed?

This should be possible as well for number based path details like speed. We can also define the color mapping, so that higher speeds could be green and lower speeds red or anything like this. Should I add something like this?

It's possible :)

This is really great!
Potentially this is also useful for max_speed, but maybe there are problems for the unlimited cases on a German Autobahn leading to infinity peaks ;)

Potentially this is also useful for max_speed, but maybe there are problems for the unlimited cases on a German Autobahn leading to infinity peaks ;)

We can catch these ;). I just pushed the code. The current solution will require manual handling for every path detail that we want to show like this instead of the elevation.

Cool - thanks!
Could we automatically enable it for all path details with numbers?

Ok, after "npm update" this works for me!
And yes, those new features are really neat - wow! So this is an important thing to have.
There is some limitation when I use details=average_speed, then the elevation is no longer an option, I would have expected that I can see the elevation and average_speed values. It seems the values are globally changes which will be problematic when we want the height of the chart representing the values of e.g. details=max_speed and details=average_speed. Do you know what I mean?
A tiny thing: without a details parameter the elevation is shown - here we should use the old green color like before :)
Then we need to test if it is possible to show details even if the graph has no elevation data imported.

so the units are fixed to metric units.

This is not important to fix.

It seems the values are globally changes which will be problematic when we want the height of the chart representing the values of e.g. details=max_speed and details=average_speed. Do you know what I mean?

Thanks for finding this! I just double checked, you are right, this is rather ugly :). I was able to fix this part, but then the elevation plugin didn't work properly anymore. I reverted my latest change for now, it's not as easy as I hoped to use the height of the bars to indicate the average speed. I think this would need further changes in the plugin itself.
One issues was that with average_speed, the bars will be between 0-140. For elevation the bars might be between 300-500. The plugin did not handle this properly, so we'd need an update mechanism when switching between the different path details to also update the "height" of the graph.

Then we need to test if it is possible to show details even if the graph has no elevation data imported.

This should be possible, once we improve the plugin :). For only a single PathDetail this should be possible already.

It is already on graphhopper.com/maps :)

This is awesome :)

I would also revert change regarding the "speed as height" in the chart. In a separate PR we can make the necessary changes in this matter - WDYT?

I would also revert change regarding the "speed as height" in the chart. In a separate PR we can make the necessary changes in this matter - WDYT?

Yes :).

Can you check if my latest change regarding the color is fine?

This looks good thanks :). I slightly rectored the code, so we don't need jQuery. WDYT?

I slightly rectored the code, so we don't need jQuery. WDYT?
Sure - perfect - thanks!

I had to make this PR ready for review ... is this correct that it is no longer a WIP?

... is this correct that it is no longer a WIP?

We could merge it.
I wanted to first publish Leaflet.Heightgraph on NPM and use the dependency from NPM instead of hard copying the js file. But we can do this later as well. Also we could delete all old references from the old elevation library (like css).

Ah, ok. This would be good to be done before the merge, but of course no hurry :) (can also remove the 0.12 tag)

Thx!


Falls down on JSX

This seems to fall down on JSX
Unexpected token from
ReactDOM.render((
<Provider
"<" is the cause so it seems not to be able to see this is jsx.

I must have a better configuration now as the linter is working.

Rad


Unclear how to use it (need help please)

I'm not an expert in this matter, but I really need help as I exhausted all the resources I had available (SO mostly).
So, what I need is to be capable to communicate over "https" with a local OWIN server (hosted inside a console application). Until now what I was doing was to generate a self-signed-certificate (from Windows), add it to the windows certificate store and then register it to the localhost for a specific port as follows :
netsh http add urlacl url=https://localhost:1234/ user=Everyone
netsh http add sslcert ipport=<IP_ADDRESS>:1234 certhash= appid={generate-guid}
This doesn't work properly and I  will receive an 'ugly' : "Not Secure" mark form  chrome browser.
What I tried to do with your application was to generate a certificate (in either .pem or .p12 format) , import it in the 'Local Computer->Trusted root' certificates store and then try to use it in the manner described above -  where the <cert-thumb...> will  be  the thumbprint of  the "mkcert" generated certificate.
I was not able to get to any successful result as  I will  always received:
"SSL Certificate add failed, Error: 1312
A specified logon session does not exist. It may already have been terminated. "
Can you please give me a couple of pointers on how to use your application in Windows in order to get a proper local-certificate ?
Btw - after executing "mkcert -install" I will receive :
D:_Projects\localhost-certificate>mkcert -install
Using the local CA at "C:\Users\bogdan\AppData\Local\mkcert" ✨
Note: Firefox support is not available on your platform.
What is different from this message and the one that you are presenting is the mention that :
The local CA is now installed in the system trust store! - which I don't have in my case.
Thank you in advance.

Have you tried putting it in the Personal/Certificates location in the .p12 format? Also, are you using IIS as your webserver?
I believe the firefox error is because it's not yet supported for mkcert in Windows. At least not currently.

Hi Nick,
No, actually I did not try to place it on the Personal Certificates stores (from the Local Machine) and I'll try that asap.
Now regarding the IIS - as I was mentioning I'm not connecting to IIS but to an OWIN web server hosted in a console application. Think about it as a web server under the NodeJS framework :
var http = require('http');

//create a server object:
http.createServer(function (req, res) {
  res.write('Hello World!'); //write a response to the client
  res.end(); //end the response
}).listen(8080); //the server object listens on port 8080
// this locally created web server will listen on the localhost on port 8080 :
// the call to http://localhost:8080  will respond with 'Hello World!'

Also my note referring to the message after executing mkcert -install was that I did not received the 'The local CA is now installed in the system trust store!' message which I was expecting.
Long story short I'm not able to get to the localhost and get something like that (and how/what I need to do in order to get it) :

I am a newbie, and performed the following operations:
$ mkcert -install
Created a new local CA at "/Users/treadpit/Library/Application Support/mkcert" 💥
Password:
The local CA is now installed in the system trust store! ⚡
The local CA is now installed in Java's trust store! ☕

$ mkcert localhost <IP_ADDRESS> ::1
Using the local CA at "/Users/treadpit/Library/Application Support/mkcert" ✨
Created a new certificate valid for the following names 📜
 - "localhost"
 - "<IP_ADDRESS>"
 - "::1"

The certificate is at "./localhost+2.pem" and the key at "./localhost+2-key.pem" ✅

everything is ok, but When I start the service of port 8080，in browser：
http

and https

What is missing?

What service is running on localhost:8080? Can it handle tls?

@adamdecaf I'm sorry, this problem caused by my nginx config, thanks for your help.


[Masthead-Translations]: Setup translation endpoint build folders & populate indicative content for QRadar & Storage

Engineering info:

HC engineer:  @proeung
HC Jira Ticket: https://jsw.ibm.com/browse/HC-2299
DDS consulting engineer: @jeffchew

The problem

The Hybrid Cloud team is in the process of adopting the <dds-masthead-container> component to launch two navigational L0’s supporting the QRadar & Storage content ecosystems that are managed in Drupal and AEM (see attached).
We're looking to leverage the existing ibm-dotcom-translations repo as a place that houses all of the menu translations and exposes them via the JSON API endpoints, similar to the process that we've set up for the Cloud Masthead.
While AEM eventually needs to integrate a masthead data management, we can lay the groundwork using the ibm-dotcom-translations repo as a place to manage the data until AEM is ready.

The solution

Set up translation build folders for QRadar & Storage and populate indicative US-EN content until we get final content from the team (cc. @kjwhitla).
Create GH labels for QRadar & Storage so that they're part of the build/deploy previews.
Create new Jenkins jobs to deploy QRadar & Storage endpoints.

Application/website
Drupal
Business priority
Medium Priority = upcoming release but is not pressing

The work for this ticket will mostly be done in the ibm-dotcom-translations repo and no C4IBM release is needed.

What time frame would this ideally be needed by (if applicable)
No response
Examples

Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate issues

ibm-dotcom-translations PR: https://github.ibm.com/webstandards/ibm-dotcom-translations/pull/471