text:
Align car to new auth framework

Send authorisation object to the CREATE dialog: this allows to show/hide input forms based on authorisations
DataResult now extends Auth object instead of adding auth attributes (only done for Car but can be extended to the other components -> will be done in other PR)
Handle new auth flags

Hello @LucasBrazi06
This PR is bigger than what I anticipated but the refactoring did that :)
I separated entity and data-result authorisations, they are now distinct, so I had to create new types + clean unnecessary flags.
I kept the metadata as part of the list and the entity, I think it makes sense to have a general metadata at the LIST level and specific metadata at the Action level if needed:

Admin: userID is not mandatory in the create action, but is mandatory for export action,
Basic: userID is always mandatory.

Let me know regarding the metadata alignement, I will do it in the next PR when aligning the other components, CAR is the main focus here :)

repo: sap-labs-france/ev-dashboard


text:
Prompt LLMs in the generative AI hub in SAP AI Core

Tutorials: https://developers.sap.com/tutorials/ai-core-generative-ai.html
This tutorial appears to have a few mistakes or outdated references in it.
I used the python GENERATIVE AI HUB SDK client and I found that:

Under "Querying the LLM" section this article says to run "aicore-llm configure -k keys.txt", but it actually should be  "aicore configure -k keys.txt"
In all the examples this article states the python code to call a prompt should be "chat.invoke(xyz)" but it actually should be llm.invoke(xyz)"
In the "Querying the LLM" section, this article makes a reference/uses embeddings that aren't used anywhere else, running that line of code won't work.

Hi @bradycale-taulia, @jmmargo ,
The issue has been resolved.
Thanks.

source: gharchive/issue

authors: bradycale-taulia sharmaneeleshsap

repo: sap-tutorials/Tutorials

license_type: permissive

license_source: github-api


text:
Data Content is being dropped during create_xl_sheet

Hi,
I just noticed that there is an issue with table shared_string of class ZCL_EXCEL_WRITER_2007.
When a text/string cell value is contained in the worksheet (lets say 51897) and at the same time a date value exists in a different cell in the worksheet with an integer representation of that same value (e.g. 31.01.2042 equals 51897) the text/string cell value is lost when the method create_xl_sheet is triggered.
This is because an error in method CREATE_XL_SHAREDSTRINGS . The missing cell value is lost in class attribute C_XL_SHAREDSTRINGS which leads to a return of value 0 in the method GET_SHARED_STRING_INDEX.
There is a delete statement in method CREATE_XL_SHAREDSTRINGS:   DELETE ADJACENT DUPLICATES FROM lt_cell_data COMPARING cell_value.
Within this table at that given point in time - both cell values exist (date & text/string) containing diffferent DATA_TYPE ("a" for date and "s" for text/string). Now the delete duplicates statement leaves the date record alive whereas the text/string record is deleted. Later on the following loop only considers records of data_type "s" which means that the value 51897 is not being added to the shared_strings table.
LOOP AT lt_cell_data ASSIGNING <fs_sheet_content> where data_type = 's'.
lv_sytabix = lv_count.
MOVE lv_sytabix                    TO ls_shared_string-string_no.
MOVE <fs_sheet_content>-cell_value TO ls_shared_string-string_value.
MOVE <fs_sheet_content>-data_type TO ls_shared_string-string_type.
APPEND ls_shared_string TO shared_strings.
add 1 to lv_count.
ENDLOOP.
The delete adjacent duplicates must also consider the data_type not just the cell_value!
You can test/reproduce this basically with any date as long as its integer representation exists as well as a cell value as a text/string in the worksheet.

Are you running the latest version? As far as I remember there was a bug like this some time ago which has been fixed

I guess not, I am on ABAP2XLSX_V_7_0_6 - 2016-04-01.nugg
Do you have a defect number for me to crosscheck by any chance?

Found it: #473
This is an exact duplicate. Closing this issue. Sorry about that.

yeah, code fixes part of https://github.com/sapmentors/abap2xlsx/pull/462

authors: OleEinarJansen larshp


text:
feat(djs-utilities): add canJoinVoiceChannel method

Determines whether the client can join a VoiceBasedChannel (normal voice channel or stage channel).

What... did just happen?

What... did just happen?

@FC5570 has this "pull" bot that automatically updates his main branch on his fork by force pushing it to the "main" of our repo... and he makes PRs from main. So that nukes his changes. All in all I pray for FC that he has his changes locally so he can force push again. And he should disable that crappy app.

Apologies for the inconvenience, created a new PR #284

source: gharchive/pull-request

authors: FC5570 favna kyranet

repo: sapphiredev/utilities

license: MIT


text:
feat: docs for subcommands rewrite

Warning
This pr should only be merged once Subcommands rewrite is published to npm

Converted to draft for the time being

@favna could you please add the "blocked" label

authors: UndiedGamer favna

repo: sapphiredev/website


text:
Heroku link is not working. Please look into that.

hii, I am using this for my final year project two step auth feature. please link to heroku is not working. either redeploy it on heroku or make this work

Guys the Heroku server is down. Please look into that and please sort the issue

Hi,
Yes this was a planned shutdown of test servers. So basically those servers
were never backed by anyone. I was taking care of them, so I have shutdown
all the test servers. Also with Google shutting down the less secure apps,
you can use the same server with outlook. That should be fine. And kindly
set up production server.
On Fri, 2 Dec 2022, 17:37 Gidwani-Nitesh, @.***> wrote:

Guys the Heroku server is down. Please look into that and please sort the
issue
—
Reply to this email directly, view it on GitHub
https://github.com/saran-surya/two-step-auth/issues/4#issuecomment-1335143996,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOEQS2L3EYE52FH5DPPSWELWLHRBFANCNFSM6AAAAAASPIVZFM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Hi are you still facing issues regarding the servers ?

Closing this issue due to inactivity, Kindly feel free to comment back

authors: Gidwani-Nitesh saran-surya

repo: saran-surya/two-step-auth


text:
Bug  when installing Fairseq on Poetry  enviroment

I am using Colab with python 3.8.15. always I get this error when I try to install fairseq:
Building wheels for collected packages: ffmpy, future, python-multipart, fairseq
Building wheel for ffmpy (setup.py) ... done
Created wheel for ffmpy: filename=ffmpy-0.3.0-py3-none-any.whl size=4693 sha256=e964fb758c4a97846c3b56538ea665fc5536d48ec6109e691aac10e255c8e542
Stored in directory: /root/.cache/pip/wheels/c7/a7/3e/a6b4408a53b4de8176071a885ed909562c2e4e9422ef7622fe
Building wheel for future (setup.py) ... done
Created wheel for future: filename=future-0.18.2-py3-none-any.whl size=491058 sha256=8623669d05d3d4ee11fcffd479b6f6ac05aab5781d9052cfadeb985316b2ba43
Stored in directory: /root/.cache/pip/wheels/01/49/0c/4e0a697824c7bd6516afb22e1af9d51427ccd36c74b05a297e
Building wheel for python-multipart (setup.py) ... done
Created wheel for python-multipart: filename=python_multipart-0.0.5-py3-none-any.whl size=31671 sha256=446c48e412d72913da9539bc0f08abb900cac1222e21526de244bf8326261785
Stored in directory: /root/.cache/pip/wheels/bf/98/35/8ff0b7838d6311008ca83f447b67df38d2d40f55aedadaf332
error: subprocess-exited-with-error
× Building wheel for fairseq (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
Building wheel for fairseq (pyproject.toml) ... error
ERROR: Failed building wheel for fairseq
Successfully built ffmpy future python-multipart
Failed to build fairseq
ERROR: Could not build wheels for fairseq, which is required to install pyproject.toml-based projects
le --inp_path /path/to/wav/file.wav --out_path /path/to/csv/file.csv
2022-11-08 06:18:29 | INFO | fairseq.tasks.text_to_speech | Please install tensorboardX: pip install tensorboardX
Traceback (most recent call last):
File "predict.py", line 86, in
main()
File "predict.py", line 54, in main
assert args.inp_path.exists()
AssertionError

Hi, I tried the installation again but successfully installed it in my python 3.8.10 environment.
Can you try to remove fairseq from .toml and manually install it using pip?
If it does not work, please share the colab to reproduce the issue.

My Colab: https://colab.research.google.com/drive/1dpHh5H65GPerFleedwFXtg8_Fi8ett7F?usp=sharing
Yes it does, but issue appears again when running (pip install -r requirements.txt) in UTMOS-demo. Like this:
Building wheels for collected packages: fairseq
error: subprocess-exited-with-error
× Building wheel for fairseq (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
Building wheel for fairseq (pyproject.toml) ... error
ERROR: Failed building wheel for fairseq
Failed to build fairseq
ERROR: Could not build wheels for fairseq, which is required to install pyproject.toml-based projects
And predict file produces this error:
Using device: cpu
Traceback (most recent call last):
File "predict.py", line 86, in
main()
File "predict.py", line 57, in main
scorer = Score(ckpt_path=args.ckpt_path, input_sample_rate=sr, device=device)
File "/content/UTMOS22/UTMOS-demo/score.py", line 24, in init
self.model = lightning_module.BaselineLightningModule.load_from_checkpoint(
File "/root/.cache/pypoetry/virtualenvs/utmos22-RnTJ09YD-py3.8/lib/python3.8/site-packages/pytorch_lightning/core/saving.py", line 139, in load_from_checkpoint
checkpoint = pl_load(checkpoint_path, map_location=lambda storage, loc: storage)
File "/root/.cache/pypoetry/virtualenvs/utmos22-RnTJ09YD-py3.8/lib/python3.8/site-packages/pytorch_lightning/utilities/cloud_io.py", line 47, in load
return torch.load(f, map_location=map_location)
File "/root/.cache/pypoetry/virtualenvs/utmos22-RnTJ09YD-py3.8/lib/python3.8/site-packages/torch/serialization.py", line 713, in load
return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
File "/root/.cache/pypoetry/virtualenvs/utmos22-RnTJ09YD-py3.8/lib/python3.8/site-packages/torch/serialization.py", line 920, in _legacy_load
magic_number = pickle_module.load(f, **pickle_load_args)
_pickle.UnpicklingError: invalid load key, 'v'.

UTMOS-demo uses completely different codebase.
Therefore you don't need to clone https://github.com/sarulab-speech/UTMOS22 if you just want to run UTMOS-demo.
I have made a colab notebook to run UTMOS-demo on google colab. please have a look.
https://colab.research.google.com/drive/1y9eJZx_ujwsnzckqyNodSZZTdNocLCZ4?usp=sharing
Also, if you just wanna perform prediction, you can access our online demo.
https://huggingface.co/spaces/sarulab-speech/UTMOS-demo
Hope this solves your problem

Great, Thank you much!
Regarding the training of Strong learner, does it run as described here using Colab
https://github.com/sarulab-speech/UTMOS22/blob/master/strong/README.md
or it need different codebase?

UTMOS-demo hosted on huggingface hub is only for prediction.
If you want to train the model from scratch, you have to use the code on this github repo.
You cannot use these 2 repository in same python enviornment as it messes up the environment.
Which means, you shouldn't run poetry install and pip install -r requirements.txt in the same python environment.
Whether it runs on the google colab or not is really not our concern. But I think you can try. I hope it works!!


text:
ExtensionValidator.getExtension is incorrect if filename includes extra period characters.

Windows, Linux and Mac all allow filenames like  foo.bar.txt
The getExtension method will return 'bar' instead of 'txt'.

I've submitted a pull request with a fix along with additional tests.

@rick-boardontrack Thanks for detecting this issue. Let me take a look.

authors: rick-boardontrack sashirestela

repo: sashirestela/slimvalidator


text:
Unsupported environment error: "re-evaluating native module sources is not supported"

When I start $ gulp, I get an error that points to node-sass:
(node:13141) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
/Users/admin/projects/comics/fisheye/Intro/node_modules/node-sass/lib/index.js:12
    throw new Error(errors.unsupportedEnvironment());
    ^

Error: Node Sass does not yet support your current environment: OS X 64-bit with false
For more information on which environments are supported please see:
TODO URL
    at Object.<anonymous> (/Users/admin/projects/comics/fisheye/Intro/node_modules/node-sass/lib/index.js:12:11)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
    at Module.load (module.js:456:32)
    at tryModuleLoad (module.js:415:12)
    at Function.Module._load (module.js:407:3)
    at Module.require (module.js:466:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/admin/projects/comics/fisheye/Intro/node_modules/gulp-sass/index.js:186:21)
    at Module._compile (module.js:541:32)

I'm on node 6.1.0. This was working until 6.0.0, i.e before the latest upgrade to node.

npm update
On 8 May 2016 11:00 PM, "Marvin Danig" notifications@github.com wrote:

When I start $ gulp, I get an error that points to node-sass:
(node:13141) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
/Users/admin/projects/comics/fisheye/Intro/node_modules/node-sass/lib/index.js:12
throw new Error(errors.unsupportedEnvironment());
^
Error: Node Sass does not yet support your current environment: OS X 64-bit with false
For more information on which environments are supported please see:
TODO URL
at Object. (/Users/admin/projects/comics/fisheye/Intro/node_modules/node-sass/lib/index.js:12:11)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:456:32)
at tryModuleLoad (module.js:415:12)
at Function.Module._load (module.js:407:3)
at Module.require (module.js:466:17)
at require (internal/module.js:20:19)
at Object. (/Users/admin/projects/comics/fisheye/Intro/node_modules/gulp-sass/index.js:186:21)
at Module._compile (module.js:541:32)
I'm on node 6.1.0.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/sass/node-sass/issues/1535

Was this ever proven to be resolved, or was it just closed?  I'm running into the same issue with Node 7.2.0.

authors: autoboxer marvindanig xzyfer

repo: sass/node-sass


text:
all pods crashing after successfull deployment

lookin at oone of the pods, kubectl logs does not show anything but describe shows.
Events:
Type     Reason     Age                 From               Message

Normal   Scheduled  16m                 default-scheduler  Successfully assigned viya4-frg-v1/sas-logon-app-764795d975-ps8pb to aks-stateless-38049675-vmss000000
Normal   Pulled     16m (x3 over 16m)   kubelet            Container image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-certframe:3.7.2-20201208.1607438373197" already present on machine
Normal   Started    16m (x3 over 16m)   kubelet            Started container sas-certframe
Normal   Created    13m (x4 over 16m)   kubelet            Created container sas-certframe
Warning  BackOff    62s (x56 over 16m)  kubelet            Back-off restarting failed container
root@henmo:~/project/viya4-deployment# kubectl describe pod sas-logon-app-764795d975-ps8pb -n viya4-frg-v1

any  help here please

more info
viya4-deployment# kubectl get pods -A |grep logon
viya4-frg-v1    sas-logon-app-764795d975-ps8pb                                  0/1     Init:CrashLoopBackOff   10         27m
root@henmo:~/project/viya4-deployment# kubectl exec   sas-logon-app-764795d975-ps8pb -n viya4-frg-v1 bash
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
Defaulted container "sas-logon-app" out of: sas-logon-app, sas-certframe (init)
error: unable to upgrade connection: container not found ("sas-logon-app")

You're not providing any information here. If you're having issues with SAS Viya running in the cluster you'll need to find out if the images are being pulled, which they appear to be from the info you shared. You'll need to identify what in the cluster is not working for SAS Viya and interrogate those pods. If you have not read the docs, here is the SAS Viya 4 documentation link. Not much more to help with here, you've not provided much information.

IAC using terraform was deployed successfully.
Command:
root@henmo:~/project/viya4-deployment# ansible-playbook   -e BASE_DIR=$HOME/project/viya4-deployment   -e CONFIG=$HOME/project/viya4-deployment/ansible-vars.yaml   -e TFSTATE=$HOME/project/viya4-iac-azure/terraform.tfstate   -e JUMP_SVR_PRIVATE_KEY=$HOME/.ssh/id_rsa   playbooks/playbook.yaml --tags "baseline,viya,install
VIya sas ansible deployment was working successfully, although it was successfull, i recorded the output, this is the only error found:
alhost] => {"changed": true, "cmd": ["kubectl", "--kubeconfig", "/tmp/ansible.8tr74yoz/.kube", "apply", "-n", "viya4-frg-v1", "--selector=sas.com/admin=namespace", "-f", "/root/project/viya4-deployment/kubeviya-aks/viya4-frg-v1/site.yaml", "--prune"], "delta": "0:00:14.458619", "end": "2021-08-14 18:19:36.852782", "failed_when_result": false, "msg": "non-zero return code", "rc": 1, "start": "2021-08-14 18:19:22.394163", "stderr": "Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress\nWarning: networking.k8s.io/v1beta1 Ingress is deprecated in v1.19+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress\nError from server (Invalid): error when creating "/root/project/viya4-deployment/kubeviya-aks/viya4-frg-v1/site.yaml": Ingress.extensions "sas-event-stream-processing-metering-app" is invalid: [spec.rules[0].host: Invalid value: "viya4_frg.ingress.com": a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is 'a-z0-9?(\.a-z0-9?)'), spec.tls[0].hosts[0]: Invalid value: "viya4_frg.ingress.com": a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is 'a-z0-9?(\.a-z0-9?)')]\nError
Logs and describe does not show enough information at all other than the one I provided. I have not checked every single one. As you mentioned I checkec cache and logon pods, nothing informational in the logs that lead to the issue.

OK that was fixed, no errors on the output for ansible deployment.
Pods still not running but i have  a different error.
Events:
Type     Reason     Age                    From               Message

Normal   Scheduled  8m19s                  default-scheduler  Successfully assigned viya4-frg-v1/sas-logon-app-5649dc7f64-9krww to aks-stateless-38049675-vmss000000
Normal   Pulled     8m14s                  kubelet            Container image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-certframe:3.7.2-20201208.1607438373197" already present on machine
Normal   Created    8m9s                   kubelet            Created container sas-certframe
Normal   Started    8m8s                   kubelet            Started container sas-certframe
Warning  Failed     5m46s                  kubelet            Failed to pull image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-logon-app:2.39.9-20201002.1601645502383": rpc error: code = FailedPrecondition desc = failed to pull and unpack image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-logon-app:2.39.9-20201002.1601645502383": failed commit on ref "layer-sha256:e1f6b366065c7812f6046058705acac95885ec6f616e384cf86700469b34b680": "layer-sha256:e1f6b366065c7812f6046058705acac95885ec6f616e384cf86700469b34b680" failed size validation: 341 != 342: failed precondition

That's an issue with the container registry and not the tooling. You'll have to reach out to folks there. Could also be related to your order if it has had content updates. Againk, not much to go on.

are there any updates on this issue? @henmo09 if this can be closed, please let us know. Also, if it has been solved, please do share the steps that led to a solution.

No response from @henmo09 closing.

authors: enderm henmo09 thpang


text:
Mixin parsing error

I've just started using sass-lint via grunt-sass-lint and I'm getting a parsing error due to this mixin that I have:
/// Input placeholder styling
/// @param {List} $styles - Styles
/// @requires $kp-ph--prefixes
/// @group forms
@mixin kp-placeholder-styles($styles) {
  @each $pseudo in $kp-ph--prefixes {
    @at-root &#{$pseudo} {

      @each $key, $value in $styles {
        #{$key}: #{$value};
      }
    }

    @at-root &:focus#{$pseudo} {
      color: transparent;
    }
  }
}

Producing this error:

I've quickly copied the mixin and variables it depends on into Sassmeister (using Libsass 3.2.5 option) and it's working perfectly. I know this code is producing the correct results as I'm using it in a number of projects.
I was wondering whether this could be related to #44 but felt it best to post a new issue in case.

After a little testing it seems that it doesn't like more than one interpolated string per line?

This sounds as if it's related to #44

Hmm, this looks like another issue with our AST, gonzales-pe.. I'm afraid we may be a little restricted in what we can do to fix this.. Will double check later on though...

FWIW this seems to fail on any interpolated string, quoted or otherwise, for example:
@mixin example {
    $name: 'width';
    #{$name}: 100%;
}

Yeah @Undistraction we are just waiting for the latest release of our AST to happen, it should fix the problems with interpolated strings. Looks like under a week now. Fingers crossed!

@DanPurdy That's great news. Thanks for the headsup.

See here for more info #222

@DanPurdy That's excellent news! Looking forward to kicking grunt-scss-lint out of bed once it drops! :+1:

:+1:

The original issue above is still causing a parse error as of the latest build of gonzales-pe (3.2.1) I've filed it as a fresh issue to hopefully see this fixed. You can follow the issue here

@DanPurdy Thanks for the update, much appreciated

@DanPurdy now that the issue is fixed in gonzales-3.2.x, are we just waiting for a sass-lint update which includes that update?

Yes, unfortunately gonzales-pe isn't installing on windows at moment due to some bash specific post install scripts so we're waiting for them to update or if we'll just fork it and roll our own version of it soon. Fingers crossed it wont be too long!

@davetgreen This is fixed in sass-lint 1.6.0

@DanPurdy Thank you so much!

authors: DanPurdy Undistraction aarr0n bgriffith davetgreen

repo: sasstools/sass-lint

license: mit

license_source: bigquery


text:
find with boolean value in where condition didn't worked

Hello there,
In a model, I have a boolean member var and I tried to access the model on this boolean constraints.
And I didn't get any record even if it was having the matching row at DB.
But when I tried to get List of all, I got all rows.
And when I changed the boolean type to string I got the model.
My code was like this.
I tried this in 3 different ways, but didnt worked for me.
Table.find(Table.class, "deleted=?", "false");
Table.findWithQuery(Table.class, "select * from TABLE where deleted=?", "false");
Select.from(Table.class).where(Condition.prop("deleted").eq("false")).list();

Actually boolean search is not working with true/false or "true"/"false".
You have to pass as method parameter 1/0 integer values.
Yeah, it sucks. But there is a PR that we are analizing to integrate which solves this trouble!
Hope it helps!

@shashi2459 could you test this PR (https://github.com/satyan/sugar/pull/553)
It address this issue, let me know if this is working, and then I can mege with master

@sibeliusseraphini , I would like to use the PR(#553).
But I cant modify the library code since I haven`t  downloaded the source instead i used Gradle .
I gone through PR(#553), and it will work, rather it has to work.

@shashi2459 I have merged PR #553 try using the Master branch to add Sugar. I will close it because in fact the PR solves this. If you found a trouble or something, please re open this issue. Good luck!

repo: satyan/sugar


text:
Module not found: Error: Can't resolve 'url' in ...

Module not found: Error: Can't resolve 'url' in 'C:\Users\...\Documents\GitHub\...\node_modules\@saucelabs\theme-github-codeblock\build\theme\ReferenceCodeBlock'
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "url": require.resolve("url/") }'
        - install 'url'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "url": false }
client (webpack 5.74.0) compiled with 1 error

solve the above problem by installing url package!
// NPM
npm i url

// Yarn
yarn add url


text:
OP_Code Parser

Create the OP_CODE challenge element that we will use in chapter 9
currently blocked by a final design

Closed by #1011

repo: saving-satoshi/saving-satoshi


text:
Improved authentication and role system

With the current sav/players plugin, authentication is handled by the browser, and roles are handled by the sav/roles plugin.
Requirements:

be able to login
authenticate through 3rd party api optionally
get role information from the player object (already possible)
add/remove/list player roles (already possible)
attach persistent data to the player object like stats (already possible)
treat the auth string more like a session id that can be changed by authenticating again

So the main change is going to be the additional account system on top of auth. For the first implementation, I will support only one backend to keep it simple.
Some questions:

is it possible to change sav/players and keep backwards-compatibility, or do we need a new plugin (would be a lot of redundancy)?
How does the role system have to be changed? Or can it just stay as it is?
How does the way in which persistent player data is stored have to be changed? Or can it just stay as it is?
can the auth be treated like an auto-login cookie? So after authenticating once with a specific auth, the player is automatically logged in as long as they keep the same auth?
What is the unique player handle used for logging in? A username, an e-mail address? Or do they have to authenticate while having the same nickname they used for signing up?

Hey just few comments and thoughts.

How does the role system have to be changed? Or can it just stay as it is?

I would disable the possibility to authenticate for the host role in room. The host role players should probably be defined in the plugins config.
Then to obtain or add player role:

Option 1: Allow authenticated and ONLY authenticated users to obtain a role with the old !auth command.
Option 2: Do not allow obtaining a role with a password.

Only allow players with host role to add admin role for other players (this is much like discord works with server owner and admin roles).

Either way there should be a way to add roles for user from the plugins API.

How does the way in which persistent player data is stored have to be changed? Or can it just stay as it is?

If the auth strings for the authenticated users are stored then maybe the should also have a timestamp and be purged after certain amount of time?

can the auth be treated like an auto-login cookie? So after authenticating once with a specific auth, the player is automatically logged in as long as they keep the same auth?

I think yes, but maybe could support some !logout command that would remove the auth from the user.

Looks good.
What does this mean in practise?

The auth and backend components will be interchangeable.

There will be an option in the player-controller to set which plugin its gonna be using?

This will be done using interfaces, the next big feature I have planned for the HHM. An interface is essentially a contract which is defined by one plugin (in this case, player-controller) and implemented by one or more other plugins. The HHM will make sure that only one plugin implementing an interface can be active. Which plugin that is will be decided based on several factors: 1) user configuration (user can specify which plugin to use for each interface), 2) user plugins (plugins loaded via the config), 3) defaults given by the plugin which defines the interface.