QSslSocket: Checking presence of openssl library

We need OpenSSL library for creating certificates of server app. UNIX and OS X are OK, but not all windows have OpenSSL library, so server app have to check its host computer if has installed this library.
Check explanation in:
http://stackoverflow.com/questions/33198360/qt-with-qsslsocket-not-connecting-properly

added dll library to the bin folder, use this together with the certificates, closed


Problem adding two different products, but with the same color and size

Current behavior
If the user adds two different SKUs to the cart, but with the same color and size, only Qty of the first product will be increased, and only one of the products will be in the cart.

Expected behavior
Two products should be added to the cart.
Steps to reproduce the issue

Add for example this product http://localhost:3000/men/bottoms-men/shorts-men/shorts-19/cobalt-cooltech-and-trade-fitness-short-898.html?childSku=MSH01
choosing color: blue and size: 33
Add another product, e.g http://localhost:3000/men/bottoms-men/shorts-men/shorts-19/troy-yoga-short-994.html?childSku=MSH09
and also choose blue and size: 33

Repository

Can you handle fixing this bug by yourself?

[ ] YES
[ ] NO

Which Release Cycle state this refers to? Info for developer.
Pick one option.

[ ] This is a bug report for test version on https://test.storefrontcloud.io - In this case Developer should create branch from develop branch and create Pull Request 2. Feature / Improvement back to develop.
[ ] This is a bug report for current Release Candidate version on https://next.storefrontcloud.io - In this case Developer should create branch from release branch and create Pull Request 3. Stabilisation fix back to release.
[ ] This is a bug report for current Stable version on https://demo.storefrontcloud.io and should be placed in next stable version hotfix - In this case Developer should create branch from hotfix or master branch and create Pull Request 4. Hotfix back to hotfix.

Environment details

Browser:
OS:
Node:
Code Version:

Additional information

This is urgent and we probably need to release 1.11.3 just with this one @andrzejewsky @patzick @gibkigonzo

We can add this to 1.11.2 https://github.com/DivanteLtd/vue-storefront/blob/hotfix/v1.11.2/core/modules/cart/helpers/productsEquals.ts#L81 it requires change to:
// if is same configurable option and sku
return check(['checksum']) && check(['sku'])

I will fix this as soon as possible

Yeah, really thanks @gibkigonzo - It could be in 1.11.2, better to wait for one (important though) fix, actually 1.11.2 is still in processing by QA

@andrzejewsky got it - it's a draft (the release). Sure, lets be sure that cart is fixed in the 1.11.2 100%


Writing articles / blog posts on fortran-lang.org

So far we've only posted newsletters. However, it'd be of great value to establish a process for members of the community to publish Fortran-related blog posts. This would be good case for people who don't have their own blog, or people who want a wider audience than their own blog, or for any article that is especially relevant for readers of fortran-lang.org.
Ondrej and I discussed this via email some time ago, and came up with a first stab of criteria and process. Here they are:
Criteria:

Relevant: The article should be about Fortran, or at least interesting to Fortran programmers.
Original: The article should not have been published elsewhere, but adaptation from GitHub, Discourse, or Twitter threads is fine.
High quality: The article provides meaningful and useful information, does not advertise a product or service, and is generally aligned with the Fortran-lang community.

Point 3 is especially subjective and difficult to quantify, so review will be important.
Process:

The Author opens an issue to propose an article, with a tentative title and short description.
If there are thumbs ups / go aheads at step 1, open a PR with the article, and request 3 reviewers.
Reviewers review and approve the article. Once published, it's distributed on usual channels (Discourse, mailing list, Twitter)

We'll discuss this on the call this week.

I think this would be great. The other thing we discussed is conflict of interest (say somebody submits an article about compiler comparison and I would like them to mention LFortran which I am also the main developer of), which we can resolve by the person (e.g. me) being able to participate / provide feedback, but would not count as a reviewer.

Also for long standing up-to-date material, we should simply write it as a tutorial elsewhere at the website.


_init method that has parameters shows non-descriptive error

Godot version:

Issue description:
When a script with an _init method that uses parameters is added to a node in a scene, the scene fails to load and the error shown is very non-descriptive:

Minimal reproduction project:
Init Error Godot.zip

This is still an issue certainly (3.0.6 and https://github.com/godotengine/godot/commit/8704b77) , and with a scene where the root has a script with a non-zero arg _init it will just instantly close the game.
Just got off helping someone who spent quite a long time trying to decipher the somewhat inscrutable error, where if anyone code followed it (like trying to access a member of the instanced scene), what you'll see first is just the membe error, and appear to instance a scene of the node type the scene specified, script ending up as null and access to members failing.
Only after removing any member access to "nonexistent" members, you would see only the real error as above.
Example:
# SomeScript.gd:
var contents
func _init(a, b, c):
    pass

# SomeScene.tscn.. (Imagine it's a Node2D with SomeScene.gd attached)

# SomeGame.gd:
const SomeScene = preload("res://SomeScene.tscn")

func do_things():
    var inst = SomeScene.instance()
    inst.contents = "hello, hello??"`

and running this you will be faced with something like this in 3.0.6:

while in the version of master I have, you will not get any error, it will merely close out.

I'm the person who @profan helped with this issue. Just to throw in my two cents, if possible, I would really like this to throw a compilation error with a proper message indicating that you shouldn't use _init here for these reasons.

I have this error with v3.5.beta1.official [b9b23d222]

This cases to popup when using resource method of saving. (And maybe the same using .store_var() because first I encounter this cases when using .store_var() and I switch to ResrouceSaving in hope to be different)
https://discordapp.com/channels/212250894228652034/1039776198437376030

I just ran into this issue in version v3.5.1.stable.official [6fed1ffa3]
Except that there is no error message at all.
In fact it seems the _init() function with a parameter prevents _ready() from running.
In the following code nothing prints if _init() has a parameter and there is no error message.
If _init() has no params. then both "init" and "ready" get printed.
extends Node2D

#func _init()->void: 		# init with no parameter prints "init" and "ready"
	#print("init")

func _init(x:int) -> void:			# has parameter and does not output
	print("init")

func _ready() -> void:
	print("ready")


Woodblock map style

This will be the first of a proposed series of alternative map styles, drawing on various points in the history of cartography. Eventually, they would be available as alternative styles in some control TBD on the main OHM website.

https://api.mapbox.com/styles/v1/vanessa-gin/ckz5r3zdy001215ofoeq1k7wm.html?title=view&access_token=pk.eyJ1IjoidmFuZXNzYS1naW4iLCJhIjoiY2t3d2dzYXhxMDNtZDJ1bGFsY2c5dXV3ciJ9.jJ1Ujxks-kpcwSiiNdemfA&zoomwheel=true&fresh=true#3.62/47.62/32.1

Woodblock style design process
Excited the share the first of many custom OHM styles. The below describes the design process that went into this woodblock map. These elements also allow for the overall style to be clearly “woodblock”, while also allowing a balance to exist as the timeslider moves across time and more data gets added to the map as it moves towards the “present”. The design tried to consider avoiding any possible clutter for when more data is added.
Background

For this style, it made sense to emulate the texture of old, aged paper, as this aesthetic is something we are very used to seeing in old maps.
Typeface and styling

For the font choice, I chose the Eadui (with SIL Open Font License) because it was very close to a typeface style that was used often in woodblock maps, and also was easier to read on a screen than the bolder Blackletter options that also typical woodblock map fonts.I also made a thick halo in the labels, emulating the “halos” that were commonly seen in woodblock maps, due to map makers adding labels via slot cutting (read more about tools and media here), or leaving space to label by hand.
Linework (roads, country boundaries)

Both the tools used and the medium (wood) meant that everything carved into the wood was not perfectly linear, perfectly spaced, or perfectly circular. Additionally, using ink on the block and pressing down the block onto paper meant the ink sometimes squeezed to the side, or was patchy on the paper itself, providing even more textural elements. Essentially, the tools and mediums used mean that woodblock maps have “imperfections” as an enormous part of the aesthetic.
In order to mimic this, I created “splotchy” (ink squeezing/inconsistent) linework which is used in country boundaries and building linework, as well as “inconsistent tapering” linework for the roads.
Note, I intentionally used a light dashed-line for state boundaries rather than another textural line pattern, as it was a little too much texture to use another “imperfect” line pattern for states (alongside a more intricate font, country boundaries, paper texture, roads, and stylized icons).
Symbology

A huge part of old maps are the illustrative elements across the map, from icons used for cities to map monsters across the old map. I created two different sized building icons, two different map monsters, and a tree grouping to provide this final aesthetic element to this map to wrap up the “woodblock map feeling” of the style.
Feedback
We welcome feedback!
Questions:

Are there data layers that exist you would like to have added to the map with an appropriate woodblock style representation that make sense with this style?
I was thinking of adding more map monsters, but also don’t want to overwhelm the style. Should I add more?
Are there other map styles you would love to see made from the history of cartography, and what are examples of those? Would especially love to see old maps created in different areas of the world to help provide that historical variance.

Let's call this done! Future updates to Woodblock can get new issues


HTTP request profiling should surface body information

The HTTP request profiling code currently surfaces request/response metadata and headers via the timeline. We'd also like to be able to surface the body of the request/response in some fashion.

@zichangg I'm a bit bogged down with other work right now, think you can take this on for me?

sure thing!

Hope to see the response data, this is a very urgent need.


Is there a way to jump to the position which is just after the current match pairs?

For example, in C++, we need a semicolon at the end of every line, so if I call the function Foo with parameter 24, by using this plugin, I will have:
Foo(24|)
Notice '|' is where the cursor is, and I want to move it after ')' so that I can add ';'.

Yes, Plug(PearTreeJump) achieves this. It's unmapped by default, but you just need to map it in your vimrc. Ex:
imap <C-l> <Plug>(PearTreeJump)

Alternatively, in this particular example, entering ) will also move you past it instead of inserting another ).

Thanks for the tip! It worked for me.


Remove unnecessary tests

Tests removed when the functionality is sufficiently unit tested, or
there is another product test covering the case.
I removed more tests!  hopefully the prestodb/presto-admin builds will stop timing out on connector tests and short product tests.   @petroav @ebd2

merged


[ACNA-1106][ACNA-1107] Omit old logs while -tail argument, for aio logs commands type

Description
Prevent displaying old logs while --tail arguments is passed to aio logs type commands.
This will be applied to: aio app logs --tail and aio runtime activation logs --tail
While --tail argument, it should only show logs for new invocations that occur AFTER the command is run

In order to call the printLogs function, a condition must be met.
The startTime value should be lower than the lastActivationTime value.
Using the --tail argument, on the first run the startTime is 0 which makes the old logs to be displayed.
startTime will be initialized with Date.now() when --tail is passed.
Related Issue

https://github.com/adobe/aio-cli-plugin-runtime/issues/225
https://github.com/adobe/aio-cli-plugin-app/issues/385
https://github.com/adobe/aio-cli-plugin-app/issues/277
Motivation and Context

How Has This Been Tested?

Steps:

cd into the generated firefly project.
run aio runtime activation logs --tail.
While aio runtime activation logs --tail is running, generate some logs via the firefly app.
Expected: Only logs following the aio runtime activation logs --tail should be printed.

Repeat the above with: aio app logs --tail.
The same behavior is expected.

cd firefly project.
run aio runtime activation logs
Expected: Logs prior to aio runtime activation should be printed.

Repeat the above with: aio app logs.
The same behavior is expected.
Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

@florind12 please fill in the section How Has This Been Tested?

PR updated based on Himavanth feedback.
If we agree on these changes, we can close https://github.com/adobe/aio-cli-plugin-app/pull/467 and https://github.com/adobe/aio-cli-plugin-runtime/pull/245


Incremental load does not handle source level schema modifications.

Cases we can handle in the first iteration:

Add the columns to Redshift which are added in MySQL

Cases we can defer/have human intervention:

Remove columns to Redshift which are added in MySQL
Rename(Remove and add can add Null in above records)


Experimental/fe build

As discussed here is the pull request to test the failing jenkins job

This pull-request can be closed since we've found now the problem causing jenkins build failure.


Error Updating to 0.15.0

Got this error while updating:
Updating to<EMAIL_ADDRESS>failed.Hide output…

npm ERR! Darwin 14.5.0
npm ERR! argv "/Applications/Atom.app/Contents/Resources/app/apm/bin/node" "/Applications/Atom.app/Contents/Resources/app/apm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/Users/giffy/.atom/.apm/.apmrc" "--userconfig" "/Users/giffy/.atom/.apmrc" "install" "/private/var/folders/bz/1k_yfyjx5tlb_lgb9f2z35vw0000gn/T/d-11582-5260-1yta414/package.tgz" "--target=0.22.0" "--arch=x64"
npm ERR! node v0.10.35
npm ERR! npm  v2.5.1
npm ERR! file /Users/giffy/.atom/.apm/fs-plus/2.8.1/package/package.json
npm ERR! code EJSONPARSE

npm ERR! Failed to parse json
npm ERR! Unexpected end of input
npm ERR! File: /Users/giffy/.atom/.apm/fs-plus/2.8.1/package/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.
npm ERR!
npm ERR! This is not a bug in npm.
npm ERR! Tell the package author to fix their package.json file. JSON.parse

npm ERR! Please include the following file with any support request:
npm ERR!     /private/var/folders/bz/1k_yfyjx5tlb_lgb9f2z35vw0000gn/T/apm-install-dir-11582-5260-kq1mlz/npm-debug.log

It seems to occur in fs-plus's package.json. The file most likely got corrupted during download. You need to reinstall the package to reinstall the corrupted dependency.

Re-installed. No issues.


Add Instruction.HasOpKind(Opkind kind)

Often Iced says something like "Use this property if the operand has kind Opkind.xxxx". There is currently no one liner to check that. The instruction may have up to 5 opkinds. Therefore it would be really useful to have a function for that, so we can do this instead of iterating through all kinds ourselves:
if (instruction.HasOpKind(Opkind.Memory))
{
    memoryBase = instruction.MemoryBase;
}

I could make a PR for that if the suggestion gets approved.

This won't work if it's a register since you don't know which Op{XXX}Register property it is. It only works if it's some OpKind that can appear at most once in all operands.
Why don't you iterate over all operands in a loop?

Why don't you iterate over all operands in a loop?

That is why I am doing currently, but as extension method because I have to do this multiple times at different locations in my code. However it seems to be useful and natural enough to add this officially into Iced:
namespace Iced.Intel.IntelFormatterInternal {

  public readonly bool HasOpKind(InstrOpKind opkind) {
   //loop here
  }

}

Sure, send a PR!


Add "SS" websites

We would like to request the addition of two website domains associated with Sanctioned Suicide (SS) to the blocklist.
sanctioned-suicide.net
sanctioned-suicide.org

These domains have been identified as platforms that promote and discuss suicide methods, including those involving substances and gases, as mentioned in the analysis conducted by the University of Padua. The analysis highlighted the presence of methods such as Hydrogen Sulfide, Sodium Azide, and Nembutal on the Sanctioned Suicide forum.
While this scenario does not fit into any of the categories on the list you keep, please feel free to close this issue if you believe it is not applicable.
Background Information:
Sanctioned Suicide is an internet forum known for its open discussion and encouragement of suicide and suicide methods. The forum has garnered widespread scrutiny for its promotion of suicide.
Wikipedia
https://en.wikipedia.org/wiki/Sanctioned_Suicide
Letter from the Members of Congress
https://trahan.house.gov/uploadedfiles/doj_sanctioned_suicide_letter_final_dec21.pdf
The New York Times investigation
https://www.nytimes.com/interactive/2021/12/09/us/where-the-despairing-log-on.html
University of Padua analysis
https://thesis.unipd.it/retrieve/3f2c4551-edf3-494f-9fc6-ff39821ac254/Sartori_Elisa.pdf
Fix The 26
https://fixthe26.com/category/stop-sanctioned-suicide/
The presence of websites like Sanctioned Suicide, which openly discuss and encourage suicide methods, poses significant harm to online users. These platforms can have a detrimental impact on individuals who may already be vulnerable or struggling with mental health issues. By providing a space for the exchange of detailed information on suicide methods, these websites can potentially facilitate and normalize self-harm behaviors. This can further exacerbate feelings of hopelessness, isolation, and despair among individuals who are already contemplating suicide. Moreover, the exposure to such content can potentially trigger and influence vulnerable individuals, pushing them towards dangerous actions. It is crucial to take proactive measures to restrict access to these harmful websites in order to protect individuals and promote a safer online environment.

I have gone through your code and JSON file. You want me to add these websites to the JSON file, which should provide information about what they do, similar to what you have in your 'readmedata.json' file.

Can you please assign this issue to me

Thank you for this @ymhcanada.
This is a very interesting ask.  Here are my initial thoughts:
We block adware, tracking, and computer malware here.  We also optionally block porn, gambling, social media, and consensus fake news.  Key word there: optionally.
One category we don't block is ideas.  For example, we're not going to block sites that suggest how to launder money, how to make briefcase bombs, sites that promote white power, racism, gay and transexual lifestyles, abortion, or anything like that.
Our mission here is therefore narrowly defined, and that's by choice.  We aren't here to censor the internet.  We're here to protect people's privacy and, optionally, keep some addictive proclivities away.
ALL THAT SAID, I understand what you're asking. I can't begin to imagine the combination of grief and passion that drives your organization. God bless you for that.
So my first impression is, this is not within our mission.
But I'm happy to talk it through, and happy to be convinced otherwise.

Thank you @StevenBlack for your thoughtful response to our request. We completely understand and respect your mission to protect people's privacy, as well as the optional nature of blocking specific content categories. We recognize that our request may not be directly related to your current mission.
To avoid further exposure of the websites in question, I will close this issue and remove the content within it. Once again, thank you for the work you do maintaining this list and appreciate the dedication it takes to uphold its principles.


Add dAppwright testing

Description
Close #20, but we may want the React code in #19.

I don't know why CI is not running on this repo.

Maybe we also need a README section 🤔

Maybe we also need a README section 🤔

NVM. We'll do that here https://github.com/oasisprotocol/sapphire-paratime/issues/462


Unexpected exception on fast interpreter mode

Build commands
I compile the code with commit id 892a94fd05f2e95fc68535d763bf67ab1b8e6263.
Platform: Ubuntu 20.04
CPU: amd64
compile:
export CC=/usr/lib/llvm-16/bin/clang
export CXX=/usr/lib/llvm-16/bin/clang++
cd product-mini/platforms/linux/;rm -rf build
cmake  -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_REF_TYPES=1 -DWAMR_BUILD_SIMD=1 -DWASM_ENABLE_BULK_MEMORY=1 -DWAMR_BUILD_AOT=0 -DCMAKE_BUILD_TYPE=Release -DWAMR_BUILD_FAST_INTERP=1 -DWAMR_BUILD_LIBC_WASI=0 -DWAMR_BUILD_LIBC_BUILTIN=1 -Bbuild

execute:
iwasm --heap-size=0  <tc_name>

Cases
wamr_fast_interpreter_memory_oob.zip
Actual output:
Exception: out of bounds memory access

Expected output:
0xffffffffffffffff:i64

@erxiaozhou thanks for reporting the issue, it was fixed with https://github.com/bytecodealliance/wasm-micro-runtime/pull/3058.

Thank you for your reply!


Remove old zlib artifacts

I have created this as a separate pull request. I don't think anybody is interested in these files anymore. If they want them it is in the madler/zlib repository or in this repository history. Maybe there is some value in holding on to them for nostalgia, but I think it is very little. If they do convey something of importance, it might be better to move those certain informations to the Wiki page.
Additionally, some of the instructions in these readme are out-dated.

We might need to go through these files and copy out the information that is still relevant.

I think we need to sort out the documentation and clean it up before first release... It might be the last thing before the release, but we can't postpone it too much...

@Dead2, I tried to do that as much as possible with #346, but it would be good to have somebody else go over it as well.

The changelog and the readme we can remove. But I feel that the FAQ still contains things we might want to keep in some form. If you can change this PR to only remove the two former files, then at least we can get those two out of the way.

Would it be sufficient if I move the FAQ to the Wiki?

I have found a change log in the inflate.c source code that I've removed as well.

Also, I propose we get rid of treebuild.xml too.

The wiki is not currently a good place for a FAQ to live unfortunately. I think we should still have an (updated) FAQ file distributed with the source.
The rest looks good.
We also need to update the man page and pdf (or delete the pdf perhaps?).

The problem with man files and pdf files is that man files are Unix-specific, but pdf files can only be created/updated on operating systems and distributions that include the conversion tools, but can be viewed on Windows too.

I added the FAQ back and removed treebuild.xml and the zlib.pdf.

Rebasing looks like it fixed the CI issues.

I don't honestly know what tool uses treebuild.xml files and how they are generated or updated... It seems to me to be just one extra build step that possibly no-one of our users will/can use, especially if the file is constantly out-of-sync.

I am thinking the pdf might as well be replaced by contents in the readme and faq, for the non-linux platforms. I don't think there is anything we want to include that would require it to be in a .pdf file (images, math-formulas, etc).
So a PR updating the FAQ and possibly the readme if the manpage has anything important we want to have there too would be nice.


Improve command status code

Codecov Report

Merging #85 (2105a4e) into main (69fa77c) will not change coverage.
The diff coverage is 80.00%.

@@            Coverage Diff            @@
##               main      #85   +/-   ##
=========================================
  Coverage     99.91%   99.91%
  Complexity      464      464
=========================================
  Files            34       34
  Lines          1208     1208
=========================================
  Hits           1207     1207
  Misses            1        1

Impacted Files
Coverage Δ

src/Command/TwigCsFixerCommand.php
97.36% <80.00%> (ø)

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


Cron Jobs Not Appearing

I'm trying to set up the cron jobs to run but I'm not seeing them when I run vagrant ssh followed by crontab -l. It simply says no crontab for vagrant. I hope I'm following the correct syntax on this since this is my first time setting these up in the config.yml file:
# Cron jobs are added to the root user's crontab. Keys include name (required),
# minute, hour, day, weekday, month, job (required), and state.
drupalvm_cron_jobs:
  - {
    name: "Richland Cron",
    hour: "*/3",
    minute: "15",
    job: "drush -r /var/www/drupalvm/richland cron"
  }
  - {
    name: "BYL Cron",
    hour: "*/3",
    minute: "20",
    job: "drush -r /var/www/drupalvm/byl cron"
  }
  - {
    name: "LCS Cron",
    hour: "*/3",
    minute: "25",
    job: "drush -r /var/www/drupalvm/lcs cron"
  }

These are actually added under the root user. But sounds like that's something we should fix.

Duh, I see that in the comment above now. Sorry. So how do you switch to the root user? I tried su - with password root but received the message su: Authentication failure.

You can check using the sudo command: sudo crontab -l

Awesome. Thanks for your help!

@geerlingguy should we add the crons under the vagrant user instead?

For the VM alone i don't think it's worth changing the functionality. But for people running the provisioning on a production environment I dont think these should be added under the root user.

@attheshow heads up, in the next version of Drupal VM this will be changed to how you first expected it to work. The cron jobs will be added to the vagrant user. Thanks for pointing this out 👍

Also a quick way to change to the root user, in case you ever need to: sudo su :)

Great. Thanks for the consideration and the tips!


Add ability to disable terser mangle in server

🚀 Feature request
Current Behavior
I have a application which uses typescript decorators in server side, such as ORM, the class names should not change in this case because the ORM uses to sync table name in db.
Desired Behavior
Classes and functions names keep their names of source code.
Suggested Solution
Some option to razzle.config.js can be added to keep in sync with mangle: false in terserOptions, thus this will avoid mangling in class names or functions, another option is change keep_fnames and keep_classnames keys to false.
This modification should only affect server side.

Who does this impact? Who is this for?
Typescript/Advanced users.
Describe alternatives you've considered
Add a overwrite terser plugin in my own configuration

There is no terser being used server-side

Not directly, but webpack uses terser as default minifier when mode is production even when target is node

Need to look at that after 4.0 is out

Actually, can add this in 4.0 if you add a pull request with the suggested changes. 😀

Actually, can add this in 4.0 if you add a pull request with the suggested changes. 😀

Actually, can add this in 4.0 if you add a pull request with the suggested changes. grinning

Ok, i'll try to implement this today or tomorrow.
Do you think it is better to provide an option to disable mangle or a way to pass all options to the terser plugin? The option should affect only the server? @fivethreeo

Actually, can add this in 4.0 if you add a pull request with the suggested changes. grinning

Ok, i'll try to implement this today or tomorrow.
Do you think it is better to provide an option to disable mangle or a way to pass all options to the terser plugin? The option should affect only the server? @fivethreeo

Follow
https://github.com/jaredpalmer/razzle/blob/canary/packages/razzle/config/createConfigAsync.js#L192
Somehow :)

Follow
https://github.com/jaredpalmer/razzle/blob/canary/packages/razzle/config/createConfigAsync.js#L192
Somehow :)

If you want to try hacking on this, I have a workflow:
npm install -g yalc
git clone https://github.com/jaredpalmer/razzle.git
cd razzle
git checkout -B canary
NODE_ENV=development yarn install ---ignore-engines
yarn try-example basic
# or any example in the examples dir
# or just add your own in the examples dir
cd example
yarn start
yarn build

Make changes to razzle and run:
yarn updateyalc
yarn build
yarn start

In the example dir to use your modified razzle
You can even add dependencies in the example dir with yarn

If you want to try hacking on this, I have a workflow:
npm install -g yalc
git clone https://github.com/jaredpalmer/razzle.git
cd razzle
git checkout -B canary
NODE_ENV=development yarn install ---ignore-engines
yarn try-example basic
# or any example in the examples dir
# or just add your own in the examples dir
cd example
yarn start
yarn build

Make changes to razzle and run:
yarn updateyalc
yarn build
yarn start

In the example dir to use your modified razzle
You can even add dependencies in the example dir with yarn

https://github.com/jaredpalmer/razzle/commit/df4b895ffd29934417f3570b5dd730d55a6b5e23
added in v4.0.0-canary.19

https://github.com/jaredpalmer/razzle/commit/df4b895ffd29934417f3570b5dd730d55a6b5e23
added in v4.0.0-canary.19


Impossible to remove a user if the user email is wrong

-1  I create a user freignat with a wrong email<EMAIL_ADDRESS>-2 I can't receive a confirmation email and the user is never verified
-3 i can't delete the user myself to recreate it with the right email because it needs the user to be log in

here #1156 would help

yes, but for a normal user who don't have su password, it's a shame to have to ask to a super-user.
Better than the user can handle that himself

@ndecory, yes, gc is a way, but then the user have to know when the gc will be executed

@freignat91 it's probably inconvenient, however, if we let anyone delete unverified users, a malicious attacker can deny anyone from signing up by simply delete their accounts continuously.

@bquenin, sure, authorize anyone to delete unverified users is not a good solution, but the true user is the only one who know the password he gave, so perhaps we can authorize to delete unverified user but control it with the password?

@freignat91 what if the unverified user forgets his password?

@bquenin, for password mater the su is there, this time it's a 'normal' way

@freignat91 I'm not convinced it's the best solution. However, you can give it a try :)

@bquenin, it makes no sense to develop a solution we don't agree on. Let's stay on the gc idea so

@freignat91 I don't say it's a bad solution, I'm just thinking of the induced tasks:

we need to update the CLI in order to support this parameter,
we probably need to update the UI with a dedicated screen for this purpose.
In case the unverified user forgets their password, we need to resort to the super user anyway.
The pros are that the user is able to remove themselves from the user DB right away.

It seems that the automatic removal of the user after an hour is less work but the drawback is that the user have to wait an hour before they can sign up again.
It's more a matter of consensus, I personally prefer the gc approach.


Add remap and InvLerp

I never used remap and inverse lerp, so I Googled a bit.
Looks like the remap was known as range_lerp some time ago, but now it's remap:
https://github.com/godotengine/godot/pull/65361
I wonder whether InvLerp should be InverseLerp to fit the Godot naming, but I personally prefer the shorter form because Go math expressions are usually verbose enough anyway.
But for the context and searchability, I may add a comment to the code later.

inverse_lerp: https://github.com/godotengine/godot/blob/d0dc3896ad6fe039e4ad0607d901c81197cb3a3b/core/math/math_funcs.h#L437
remap: https://github.com/godotengine/godot/blob/d0dc3896ad6fe039e4ad0607d901c81197cb3a3b/core/math/math_funcs.h#L444

I would like an empty line between the function declarations, but it's something I can fix myself in a follow-up.
Thank you for the contribution!
Feel free to submit tests or other functions in the future! :)

Here is a follow-up:
https://github.com/quasilyte/gmath/commit/8e177b514b9189c1dc544d5c8fbec9c3aa74ddfd

Thanks! I start using ebitengine after your article and find this functions useful when u wanna map entity position to something else ( hue values or hp value ). I'm not good at coding, so can't contribut much (.__. )


The host of the workspace seems to be offline.

Product and Version [VS/VSCode]: VS 2017
OS Version [macOS/Windows]: Windows 10
Live Share Extension Version: 0.3.834.0
Target Platform or Language [e.g. Node.js]: C#
Steps to Reproduce / Scenario:

Person A shares the work/starts the session.
Person B gets a link and joins the session.
Person A locks his computer.
Person B is kicked out of the session. When clicking the link again, the website shows the message: "The host of the workspace seems to be offline". {I expect to be able to continue my work, when my fellow worker has to go to the toilet.}
Person A unlocks computer and continues work in the session.
Person B still cannot join the session, and the same message is still displayed on the website.

Screenshots
If applicable, add screenshots to help explain your problem.

@IlyaBiryukov Person A's computer did not hibernate or shut down. The Windows lock functionality was used, in which the account stays fully active (Windows button + L).

Thanks! If you can get the logs, that would help us understand what's going on.

@JudithvW I've inspected the logs, looks like the logs for this particular session is not there, as none of the logs have the errors you mention. Moreover the error message you mention is also not there in our product, do you have the complete user facing string you see? Maybe with that, i can trace where you are hitting this error..

@Priya91 These are all the logs of Live Share that I have. The title of the issue is the exact message that I saw in the UI.

Hmm this seems to come from the service, @legomushroom can you take a look..

@JudithvW Was the person A still in sharing mode? That message is thrown, when the session has been disconnected from our service, so the person A should have also disconnected. Starting a new session and sharing that link to the joiner is the resolution.

@Priya91 When Person A unlocked his computer, the session was still running. So it obviously wasn't disconnected. Trying to reconnect to this session was no longer possible. We had to manually stop the session and start a new session. This is not a resolution, but a workaround, which is unwanted in software development.

@JudithvW Can you upload the logs of person A, it's very difficult to theorize what happened without debug information.

@Priya91 I already mailed all logs that I have of that day, but they responded that the logs they needed weren't there. So apparently you did not log it to the location mentioned above.

Person A no longer has the logs available.

Closing due to inactivity.

Same issue is with me. please if any one have solution for that tell ASAP. Also i want to add some more points that "" The host of the workspace seems to be offline or poor connection but "" these massage B get and
Second point :
{{{
Showing
[ A ] Offline and [ B ]  as Available  ===> B's PC
Showing
[ A ] Offline(undefined)  and [ B ]  as Offline (undefined)  ===> A's PC
}}}}
this may help for understading the issue
when
B :  Share link to A
A : At time of joining  gets Error ""  Joining collaboration session: Unable to join the host due to an authentication error. Verify
the host is online, then sign out and sign in again and retry   ""


maybe can set values

this plugin can maybe set values
setVersionNumber(), setVersionNumber() ...etc?? is it possible?

That's not possible. You set the version when you build your cordova project. The information this plugin returns is baked into the executable.


Temporality [feature request]

Hi MedSpaCy,
Thanks for creating such a great library -- I've found it incredibly helpful!
I wonder if you have any thoughts on creating a "temporality" component. That is, for a given entity, when did that entity start happening? This would be useful for symptoms in an HPI (e.g., "Pt initially presented with 2 weeks of productive cough and developed fever 3 days ago.") Symptom duration might give a sense of where a patient is in the course of an illness (e.g., COVID).
I've been developing a naïve approach of a TemporalityComponent, which is an extension on a Span that just looks for the nearest Span labelled as a "DATE". SpaCy's native models (e.g., "en_core_web_sm") label "DATE"s out-of-the-box so it's an easy implementation.
Curious to know if you've considered/evaluated a more sophisticated rules-based approach.
Thanks!

Thanks for using medspaCy and sharing your experience! Love the idea of a temporality component. I don't think any of us have explicitly done what you're describing or have plans in the near future, but I think it would be useful generally. We do handle some temporality using ConText and the is_historical attribute, although that's slightly different from what you're doing here.
An alternative to adding a new component is to handle this using ConText. You can write ConText rules with a category of "TEMPORAL" which will connect the temporal expressions to the entities in the text. This will have the benefit of letting you control which direction to look in the sentence. Here's an example using both the NER-based approach and using a custom rule:
import spacy
from spacy.tokens import Span
from medspacy.context import ConTextComponent, ConTextItem

nlp = spacy.load("en_core_web_sm")

texts = [
    "Dx COVID on 10/11/2020.",
    "Dx COVID 2 weeks ago.",
]

docs = list(nlp.pipe(texts))

context = ConTextComponent(nlp)

context.add([
    # Based on out-of-the-box spaCy NER DATE
    ConTextItem("DATE", "TEMPORAL", rule="BIDIRECTIONAL", pattern=[{"ENT_TYPE": "DATE"}]),

    # Rule-based expression
    ConTextItem("<D> days ago", "TEMPORAL", rule="BACKWARD", pattern=[
        {"LIKE_NUM": True},
        {"LEMMA": {"IN": ["day", "week", "month", "year"]}},
        {"LOWER": "ago"}
    ]),
])

# Manually set entity spans and run context
for doc in docs:
    doc.ents += (Span(doc, 1, 2, "CONDITION"),)
    context(doc)

# Print out temporal connections
for doc in docs:
    for (ent, modifier) in doc._.context_graph.edges:
        if modifier.category == "TEMPORAL":
            print(ent, " --> ", modifier.span)

It would be great to add some "TEMPORAL" rules into the ConText knowledge base, so if you develop any before we get to it we'd love it if you could share them with us! Some resources that could be helpful for this could be Timex or a model trained on the i2b2 2012 temporal expressions challenge.

Thanks!
I've only used medspacy.context in its "out-of-the-box" configuration -- I didn't realize it could be configured/extended to support this use case. I'll let you know if/when I come up with anything.
Thanks also for the pointer to the n2c2/i2b2 2012 dataset -- this is exactly what I needed to test some of my assumptions without having to annotate a bunch of notes. Turns out if you filter out the references to "note section" dates, the heuristic we're talking about (nearest DATE to an ENTITY) works pretty well.
Thanks again for your thoughtful suggestions!
Ford

Wonderful! Best of luck in your research!


Modernize Python support

Many versions of Python have been released (and many have become unsupported) since this repo was first created, and there are at least a couple of places where I've noticed either an unspecified minimum required Python version, or code that is meant to accommodate some very old Python versions.
For example, the classifiers block in pyproject.toml does not list any specific Python versions. I suggest this block be updated appropriately, including a minimum no less than Python 3.8. In fact, the GitHub Actions workflows use only 3.10 or later, so these should likely also be enhanced to perform a matrix of tests across all versions of Python this library is intended to work with (perhaps 3.8 through 3.12, with 3.13 to follow soon).
One place in the code attempts to accommodate a very old package structure for urllib functionality that should be simplified/unified. There may be other places that should be modernized, but maybe not. The codebase is relatively small, but I haven't looked for other spots yet.

@frankinspace, thanks for the follow up on the issues I recently created. I fully intend to submit PRs for them all (unless someone beats me to them). I'm going to start with this one since I think it's perhaps the most fundamental one to address.


Make start parameters cross platform

... because this allows multiple agent runners via v3.6.0's --spawn flag. https://github.com/buildkite/agent/releases/tag/v3.6.0

Thanks for review!


[BUG] Rancher panics when provisioning rke2/k3s cluster without associated dynamic schema

Rancher Server Setup

Rancher version: v2.7.2

Information about the Cluster

Cluster Type (Local/Downstream): downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider): elemental

Describe the bug

On upgrade from v2.7.1 -> v2.7.2 with an elemental cluster provisioned, Rancher panics because the machine config does not have an associated dynamic schema.
To Reproduce

Provision elemental cluster on v2.7.1
Upgrade to v2.7.2

Result
Rancher panics
Expected Result

Rancher should not panic or try to migrate elemental cluster
Screenshots

Additional context

https://github.com/rancher/elemental/issues/780
A workaround exists, by defining a dynamic schema that maps to the expected machine config. This may also affect harvester setups.
There are logs like:
2023/04/13 15:46:17 [ERROR] failed to call leader func: [dynamicschemas.management.cattle.io](http://dynamicschemas.management.cattle.io/) “machineinventoryselectortemplate” not found

panic: indexer conflict: map[byPod:{}]

goroutine 2851 [running]:
k8s.io/apimachinery/pkg/util/runtime.Must(...)
	/go/pkg/mod/k8s.io/apimachinery@v0.25.4/pkg/util/runtime/runtime.go:172
github.com/rancher/rancher/pkg/generated/controllers/catalog.cattle.io/v1.(*operationCache).AddIndexer(0xc01c802a20, {0x3f0d10e, 0x5}, 0x41ebaa8)
	/go/src/github.com/rancher/rancher/pkg/generated/controllers/catalog.cattle.io/v1/operation.go:247 +0xe5
github.com/rancher/rancher/pkg/controllers/dashboard/helm.RegisterOperations({0x4830500, 0xc023d94fc0}, {0x4871610, 0xc0017e2780}, {0x48561a0, 0xc01e461c00}, {0x4853c38?, 0xc01e461c70?})
	/go/src/github.com/rancher/rancher/pkg/controllers/dashboard/helm/operations.go:42 +0x1c6
github.com/rancher/rancher/pkg/controllers/dashboard/helm.Register({0x4830500, 0xc023d94fc0}, 0xc0019f0500)
	/go/src/github.com/rancher/rancher/pkg/controllers/dashboard/helm/register.go:22 +0x2d8
github.com/rancher/rancher/pkg/controllers/dashboard.Register({0x4830500?, 0xc023d94fc0}, 0xc0019f0500, 0xa0?, {0x0, 0x0})
	/go/src/github.com/rancher/rancher/pkg/controllers/dashboard/controller.go:25 +0x65
github.com/rancher/rancher/pkg/rancher.(*Rancher).Start.func1.1({0x4830500?, 0xc023d94fc0?})
	/go/src/github.com/rancher/rancher/pkg/rancher/rancher.go:266 +0x45
github.com/rancher/rancher/pkg/wrangler.(*Context).StartWithTransaction(0xc0019f0500, {0x482fd90?, 0xc010e4a380}, 0xc01c567f58)
	/go/src/github.com/rancher/rancher/pkg/wrangler/context.go:182 +0xdf
github.com/rancher/rancher/pkg/rancher.(*Rancher).Start.func1({0x482fd90, 0xc010e4a380})
	/go/src/github.com/rancher/rancher/pkg/rancher/rancher.go:265 +0xd9
github.com/rancher/wrangler/pkg/leader.(*Manager).OnLeader.func1()
	/go/pkg/mod/github.com/rancher/wrangler@v1.1.0/pkg/leader/manager.go:51 +0x92
created by github.com/rancher/wrangler/pkg/leader.(*Manager).OnLeader
	/go/pkg/mod/github.com/rancher/wrangler@v1.1.0/pkg/leader/manager.go:48 +0x72

To workaround this issue, create the following resource in the RMS cluster:
kubectl apply -f - <<EOF
kind: DynamicSchema
apiVersion: management.cattle.io/v3
metadata:
  name: machineinventoryselectortemplate
EOF

Tested this against RKE1, RKE2 and K3S downstream node driver clusters and was unable to reproduce. This appears to be specific to Elemental. Unassigning myself as this does not appear to be a team 2 issue.

@kkaempf - can elemental team test this.

i get this panic: indexer conflict: map[byPod:{}] too trying to upgrade a docker install from 2.7.1 to either 2.7.2 or 2.7.3.

@juadk This is not released any version of rancher (2.7.2 or 2.7.3).

ah sorry, during the Elemental meeting, we though the fix was released in 2.7.3, sorry, we totally misunderstood...

I did the same test but this time, I directly updated the rancher deployment with v2.7-64a851660dfb043b6a1621bfbc3b902385f56924-linux-amd64 and the pod stayed alive.
I think we are good now.

i'm still getting panic: indexer conflict: map[byPod:{}] crashes when trying to update a docker install from 2.7.1 to 2.7.4.

@roderickgreen The fix for this will be in 2.7.5.

just confirming that the upgrade of our docker install to 2.7.5 succeeded.  thanks!

I am still seeing this in 2.7.5 in Rancher installed using Helm


cookies loaded but login page detected

Hello, when I use this command:
crawley -depth -1 -dirs only -cookie "phpbb3_XXXXXX_sid=XXXXXX; phpbb3_XXXXXX_u=XXXXXX; phpbb3_XXXXXX_k=XXXXXX;" "https://XXXXXX.net/viewtopic.php?p=5018859" > urls.txt
crawley scrapes the login page of the forum and not the thread I selected, crawley doesn't return any errors
2023/03/20 16:08:58 [*] config: workers: 4 depth: -1 delay: 150ms
2023/03/20 16:08:58 [*] crawling url: https://XXXXXX.net/viewtopic.php?p=5018859
2023/03/20 16:09:00 [*] complete

I tried with different user agents and headers, every time the result is the same: login page of the forum. The cookies are ok, I copied them using EditThisCookie googlechrome extension. I'm not using any vpn/proxy.
I tested also other forums, the result is always the same, I can't login.
Do you know if there is a problem loading cookies?

i failed to register at ddunlimited.net, as long as i cant speak italian, so i cannot understand questions. I can try to help you with this issue, but i need credentials (and urls) for testing. Can you provide them? My email is al3x.s0rg(at)gmail.com

ok, I created a test account with temp email, I sent you the full cookie in netscape format. I just tested the cookie in two different browsers, it works.

Ok, you need to use "Semicolon separated Cookie File" format upon export, and rigth now you also need to manauly remove all comments from result. I will add coments parsing in future releases, this is the first encounter )

I exported cookies from EditThisCookie extension using the "semicolon separeted format", I removed the first 3 comment lines but it's again in the login page.
This is the exported string (it's almost the same I manually built in the previous tests 🥲):

I get these 48 links (as before when I set -headless without -dirs only) https://bin.disroot.org/?6bf486611c974dc6#BFLGkPZatknTvchGpe1UQbofmhZ4ToCR7RbHw3G4Eihb that are the parts of the login page because there is the button https://ddunlimited.net/ucp.php?mode=sendpassword "I lost password" (that is the "I lost password" button in the login page) and also the other buttons/links of the same login page.

Instead in the page I try to scrape there should be >300 forum threads (it's a page with a huge index)

Any idea? Did you get more links than me?

Nope, i hope i got some time to investigate this at next weekend. As for now - please try change user-agent for crawley, you need to get you current browser user-agent string (from any request) and give it crawley with -user-agent "your-user-agent-here" flag.

When you have time, do you know how to get the header string used by my browser (brave, archlinux)? I'm searching but there aren't info.

I found a way to make the cookies working with curl:
curl --cookie "phpbb3_ddu4final_k=XXX;phpbb3_ddu4final_sid=XXXX;phpbb3_ddu4final_u=XXXX;" -j -L "https://ddunlimited.net/viewtopic.php?f=440" -o test.html

using the -j parameter the page is correct page, this works only for this website, I don't know why.

A new cookie session means that all the old session cookies will be thrown away. It is the equivalent of closing a browser and starting it up again.
Tell curl a new cookie session starts by using -j, --junk-session-cookies
Do you know if there is a similar feature for crawley (something like cleaning all previous cookies before using the new one)?

Thank you for this investigation, i will inspect this closer, an add such feature to crawley.

Plese, check out new https://github.com/s0rg/crawley/releases/tag/v1.5.12 release it should fix this issue.

I tried again using this command:
crawley -depth -1 -headless -cookie "phpbb3_ddu4final_k=XXX" -cookie "phpbb3_ddu4final_sid=XXX" -cookie "phpbb3_ddu4final_u=XXX" "https://ddunlimited.net/viewtopic.php?p=5018859" > test.txt

getting this output:
Scraping all urls

2023/03/29 23:46:12 [*] config: workers: 4 depth: -1 delay: 150ms
2023/03/29 23:46:12 [*] crawling url: https://ddunlimited.net/viewtopic.php?p=5018859
2023/03/29 23:46:13 [*] complete

Cookies are loaded, I'm not sure if the "cleaning" feature is by default.
Thanks for your support
Crawley v1.5.12-a1f6de2 (archlinux)

its by default. Thank you for your detailed reports - they are very helpfull.

I forgot to say that the page is still the login page, it seems cookies are not correctly loaded

Hello again )
Please check out new release: https://github.com/s0rg/crawley/releases/tag/v1.5.13
Seems i fixed it )
Please note, you still need -user-agent to make phpbb happy:

crawley \
-headless \
-user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/111.0' \
-cookie 'phpbb3_ddu4final_k=xxx; phpbb3_ddu4final_sid=xxx; phpbb3_ddu4final_u=xxx' \
'https://ddunlimited.net/viewtopic.php?p=5018859' > list.txt

output:
2023/04/06 00:19:00 [*] config: workers: 4 depth: 0 delay: 150ms
2023/04/06 00:19:00 [*] crawling url: https://ddunlimited.net/viewtopic.php?p=5018859
2023/04/06 00:19:05 [-] GET https://ddunlimited.net/viewtopic.php?p=5018859: Get "https://ddunlimited.net/viewtopic.php?p=5018859": context deadline exceeded
2023/04/06 00:19:05 [*] complete

I tried a lot of combination of paramters, I get everytime the same error above.
There is also another problem (this exact command worked with Crawley v1.5.8-84c5855 but now it's not working anymore) :
crawley -headless -user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/111.0' -cookie 'CENSORED_key=a%3A4%3A%7Bi%3A0%3Bs%3A6%3A%22153366%22%3Bi%3A1%3Bs%3A40%3A%225b6hf75839hf5832g6f4cf2%22%3Bi%3A2%3Bi%3A1868962414%3Bi%3A3%3Bi%3A0%3B%7D' 'CENSORED_URL' > list.2.txt

output:
2023/04/06 00:26:00 [*] config: workers: 4 depth: 0 delay: 150ms
2023/04/06 00:26:00 [*] crawling url: CENSORED_URL
2023/04/06 00:26:00 net/http: invalid byte ';' in Cookie.Value; dropping invalid bytes
2023/04/06 00:26:01 [*] complete

the cookie value doesn't include any semicolon, maybe it's an encoded value (censored key and url doesn't include semicolon)

Please, check version https://github.com/s0rg/crawley/releases/tag/v1.5.14
Cookie decoding now gone, so it will load any cookie. And please keep in mind that you need to use the same user-agent, from which you obtain those cookies. So you need to copy cookies AND you user-agent from request.

The cookies is loading but only in https://ddunlimited.net/viewtopic.php?p=5018859 I get the context deadline exceeded error. I extracted my exact user-agent string and used a fresh new cookie (from the same browser) but the same error is still present.
2023/04/12 10:18:18 [*] config: workers: 4 depth: 0 delay: 150ms
2023/04/12 10:18:18 [*] crawling url: https://ddunlimited.net/viewtopic.php?t=3610730
2023/04/12 10:18:24 [-] GET https://ddunlimited.net/viewtopic.php?t=3610730: Get "https://ddunlimited.net/viewtopic.php?t=3610730": context deadline exceeded
2023/04/12 10:18:24 [*] complete
Time: 5 s.

I can't get any info online about the context deadline exceeded error, I don't know why if I use curl I don't get any error.
Thanks for your support

Please, check fresh release: https://github.com/s0rg/crawley/releases/tag/v1.6.0 it has -timeout option, so you can increase default timeout (5 seconds).


Refactoring creation of serialized JWT from Verifiable Credential

In verifiable.Credential.JWT() method, the private key is passed as parameter. According to @llorllale,

Private keys will never leave the wallet, therefore they cannot be passed in as a parameter to anything outside of the wallet itself.
Therefore, refactoring is needed here.

See https://github.com/hyperledger/aries-framework-go/pull/312#discussion_r327796375

It also applies to Verifiable Credential marshalling to JWS.

Somewhat related: https://github.com/hyperledger/aries-framework-go/pull/456#discussion_r334988449


Congratulations and Improvement (perhaps)

Hi Kieran,
First, congratulation for this module veru useful and beaufiful display.
I appreciated Switch NoPreview, check PSVersion, ExectuionContext, RunasAdmin, and Setting Neet.securityProtocol = TLS1.2 (in reality, this param is already in my profile, but I put it in all my scripts too), and error handling
Question : Why do you use this
$InstalledModules = Get-InstalledModule |
    Where-Object -FilterScript {
    ($_.name -notmatch 'PackageManagement|PowerShellGet|Az\.|AzureRM\.|Azure\.|PSReadline')

Any reason to skip these particular modules ?
Later (line 259), you use UpdateModule ... -Scope "AllUsers". Any reason to do this ? I have some module in my User scope, on other in AllUsers scope. By this, All modules will be updated, and the updated modules will be in AllUsers Scope ... unless I misunderstood how the code works.
Generally, First, i install a new module in my user scope, read the code, tests, and if it could be useful for my teammate, I install it in AllUsers scope. This break my rule. :-) Another way to do this ? In a perfect word, il would like module will be updated in their own scope.
Regards
Olivier

First of all, thanks for the appreciation. It was nice to get. You made some excellent points, and I've grabbed some screenshots to explain better why I've configured parts the way I did.
I'd not thought of your use-case scenario. I've been using/changing this script for my benefit over the years and never thought of a reason that someone wouldn't want all the modules upgraded. The great thing about sharing with others is that you get feedback that you'd never have thought of. It's been a busy week at work, so I'll answer you in full over the weekend.
After feedback from someone else, I'm changing the switch from "-NoPreviews" to "-AllowPreviews". So hopefully, over the next week, there'll be a big update.
Thanks again.
Kieran

I've answered the skipped modules on the wiki page as I could see this becoming a common question.
I'll work on updating modules in their current scope next.


Feature request to have dashboard as a button

Is there a way to have a "Dashboard" button to the right next to the printers dropdown instead of being in the dropdown list.

or have the printers removed for smaller screens and the 3 dashes instead and a Dashboard button.

Hey @Jon-So , it is clearly not a good UX what I did but if you click on the printer name you will go straight to the dashboard. I do not think I can add a button between the left button and the printer name.


use_unicode throws error in psycopg2

I attempted to use this use_unicode: True to disable unicode strings in my postgres connection. It appears to have worked fine on the orator side, but psycopg2 throws an error about an unknown configuration item. Perhaps it needs to be stripped from the configuration dictionary before being passed to psycopg2?

Ok thanks I will look into this!


Unstable Behaviour of Fly.io Deployment

I have a fly.io deployment of an audio streaming service largely adapted from live_ex_webrtc.
There's a heisenbug on both the publisher and player ends where sometimes they can start/join streams and sometimes that fails.
I can confirm from IO.inspects in my forks of ex_webrtc and ex_ice that when it fails, valid candidate pairs are absent in the checklist of the ICEAgents.
Why that happens on fly.io and not locally and how to fix this is still unclear. Any help will be greatly appreciated.
For context, I'm running on two shared-cpu-1x@1024MB instances. Changing the machine specs didn't resolve the issue. Upgrading to a dedicated IPv4 address also didn't resolve it.
I'm happy to provide any other information that can help.

Hi @kingdomcoding ,
is your app deployed right now? Could you provide URL? Also, could you deploy your app with debug logs and capture them (especially from ex_ice) when your connection fails? And one more question, do you trie to connect via VPN or some other non-standard network?

Hey @mickel8
The app is live, with the publisher page and the listener page and a sample of the logs
The behaviour with a VPN is unchanged

@kingdomcoding I assume that you use https://hexdocs.pm/ex_webrtc/ExWebRTC.ICE.FlyIpFilter.html?
From logs, it looks like we can't get a response to any connectivity check.
However, I cannot reproduce your error.
In my case, sending and receiving from Chromium always works. Firefox can always hear what Chromium sends too. The only problem I noticed is that Firefox cannot transmitt. The connection is established, packets are sent and received but I cannot hear anything. However, the same behaviour I can observe when using Google Meet so this might be something on my side or Firefox side.
What browser do you use?

Yes, I use the FLyIpFilter in my runtime, as per:
if System.get_env("FLY_APP_NAME") do
  config :solving_media, ice_ip_filter: &ExWebRTC.ICE.FlyIpFilter.ip_filter/1
end

I've tested with Chrome on mac, windows and ubuntu.
I've not tried different server locations. I wonder if the ping time could be a factor?
PS: I'm happy to create a separate public repo and fly deployment if that helps

@kingdomcoding  so the problem only happens on Windows right?

PS: I'm happy to create a separate public repo and fly deployment if that helps

Let's do that. I would like to solve that problem as working Fly.io is one of our priorities

Regarding ping. I don't think so

@kingdomcoding so the problem only happens on Windows and Ubuntu right?

It appears so. But to be clear, it works sometimes and fails sometimes, which is the issue.
In addition, I've noticed the same inconsistency on mobile browsers.

PS: I'm happy to create a separate public repo and fly deployment if that helps

Let's do that. I would like to solve that problem as working Fly.io is one of our priorities

Just realized LiveBroadcaster mimics the same issue. Repo. Live

Hi, @mickel8
I wonder if there's good news on this issue, or if there's any way I can contribute to solving this
Or if there's an alternative in the elixir-webrtc/membrane world that I can explore to make progress on our app

@kingdomcoding sorry for no response :( We have some priority work to do and I didn't have time to debug this further :/ The only way is to try to analyze debug logs and try to catch the problem. Unfortunately, a deep knowledge about the ICE protocol is needed :/
You can also try to deploy your app on bare machine according to: https://hexdocs.pm/ex_webrtc/bare.html

Hey, @mickel8
From more log comparing, I now know that in the successful case, a conn check response is received which isn't received in the unsuccessful case. I also know that the conn check response came from the IP and port of a remote ExICE.Candidate of type srflx.
My hunch is that this inconsistent behaviour might be from the ice server the app depends on. I suspect that the app's selective connection might be caused by the (selective?) availability of the Googe ice server. Please confirm if I'm thinking in the right direction.
My attempt at resolving this was to add stun:stun.cloudflare.com:3478 to the default stun:stun.l.google.com:19302. Worked for a while, broke again, then worked again.
Are there reliable stun servers you can recommend to eliminate this and check if this is the root of the problem?
PS: I've now seen the connection fail on MacOS too

My hunch is that this inconsistent behaviour might be from the ice server the app depends on. I suspect that the app's selective connection might be caused by the (selective?) availability of the Googe ice server. Please confirm if I'm thinking in the right direction.

I don't think so. In every case, google STUN responds correctly and we are able to gather srflx candidate on the server side :(
I don't see much difference in these cases except ip addresses that are used. Might it be that your hosts are connected to different networks during tests? In particular, can the failing host be behind symmetric nat? You can check it here: https://www.checkmynat.com/

I don't think so. In every case, google STUN responds correctly and we are able to gather srflx candidate on the server side :(

I'm still building my mental model for how WebRTC and ex_webrtc work. At the moment, my understanding is that the server sends a conn check to the stun server and receives a response which is successful or not. In my logs, handle_conn_check_success_response only gets called in the successful case.
Am I missing something in my understanding?

In particular, can the failing host be behind symmetric nat? You can check it here: https://www.checkmynat.com/

The failing hosts are behind a Port Restricted Cone

First, we send stun binding req to the stun server to gather our public IP address. This operation always succeeds (look for new srflx candidate). We then send this public IP to the other side. Once we also receive some IP address es from the other side, we start performing conn checks, which sometimes fail.
What is the type od nat of successful hosts? Also, could you check whether our demos work for you?
https://elixir-webrtc.org/#demos


Suppress Psych.parse args warn when using Psych 3.1.0

This PR suppresses the following Psych.parse args warn when using Psych 3.1.0 (Ruby 2.6+).
% ruby -v
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17]
% RUBYOPT=-w bundle exec rubocop
(snip)

/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.71.0/lib/
rubocop/yaml_duplication_checker.rb:8:
Passing filename with the 2nd argument of Psych.parse is deprecated. Use
keyword argument like Psych.parse(yaml, filename: ...) instead.

The above Psych.parse interface has been changed by the following link.
https://github.com/ruby/psych/commit/4d4439d6d0adfcbd211ea295779315f1baa7dadd
Related PR ... https://github.com/rubocop-hq/rubocop/pull/6470

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[ ] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

Thanks!


docs(examples): force 16 columns Carbon grid

Description
This change enables 16 columns Carbon grid in Web Components examples as well as Web Components storybook. Accordion to @annawen1, Carbon for IBM.com prefers 16 columns Carbon grid.
carbon-components library sets 12 columns grid the default presumably for historical compatibility reasons as opposed @carbon/grid library's default 16 columns grid.
Also removes an unused CSS ruleset for .bx--card-group__cards selector. The original commit that introduced such ruleset (originally .bx--card-section__cards) had no element matching to that selector. Such element does not exist in latest master, either, and applying such ruleset to <dds-card-group> tag caused adverse effect to the styling.
Changelog
Changed

Enables 16 columns Carbon grid in Web Components examples as well as Web Components storybook.

Removed

Unused CSS ruleset for .bx--card-group__cards selector.

OK good point @annawen1 - Will take a look at it tomorrow.

@annawen1 Found that it was caused by a redundant CSS ruleset for .bx--card-group__cards (and <dds-card-group> tag) that is never used by React. Fixed.


sched/wdog: Revert wd_cancel semantics

Summary
In the original implementation, if wdog is not ACTIVE, -EINVAL will be returned. The rp2040 i2c driver relies on this semantics to correctly release the semaphore.
Impact
Revert the wd_cancel semantics.
Testing
Tested on Raspberry Pi Pico.

[Experimental Bot, please feedback here]
No, this PR does not meet the NuttX requirements.
Missing Information:

Summary:

Lacks a clear explanation of why the change is necessary. What problem does reverting the wd_cancel semantics solve?
Needs to describe what functional part of the code is being changed (e.g., watchdog driver, I2C driver interaction).
Requires a detailed explanation of how the change works. Simply stating "Revert the wd_cancel semantics" is not sufficient. What was the old behavior, what is the new behavior, and how does it affect the interaction between the watchdog and I2C drivers?
Missing issue references if applicable.

Impact:

Unclear if an existing feature is being changed or if this is a bug fix.
The impact on users, builds, hardware, documentation, security, and compatibility is not addressed.

Testing:

Lacks specifics about the build host used for testing (OS, CPU, compiler version).
"Tested on Raspberry Pi Pico" is insufficient. Specify the architecture (ARM), board configuration, and NuttX version.
No testing logs are provided. Include logs showing the issue before the change and the corrected behavior after the change.

Recommendations:

Expand the Summary: Provide a thorough explanation of the problem, the solution, and the affected code areas.
Address all Impact Points: Analyze and describe the potential impact of this change on all aspects mentioned in the requirements.
Provide Detailed Testing Information: Specify your build host, target environment, and include relevant testing logs demonstrating the issue and the fix.

By providing the missing information, you can ensure your PR meets the NuttX requirements and can be effectively reviewed and merged.


issue with new gobblin build

Hi Iam working on gobblin .
previously the gobblin which is installed in my machine was worked fine ..with configuration file.
recently we downloaded the new source and builded the code but we are facing below errror.
org.apache.hadoop.ipc.RemoteException: Server IPC version 9 cannot communicate with client version 4
at org.apache.hadoop.ipc.Client.call(Client.java:1113)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:229)
at com.sun.proxy.$Proxy6.getProtocolVersion(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:85)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:62)
at com.sun.proxy.$Proxy6.getProtocolVersion(Unknown Source)
at org.apache.hadoop.ipc.RPC.checkVersion(RPC.java:422)
at org.apache.hadoop.hdfs.DFSClient.createNamenode(DFSClient.java:183)
at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:281)
at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:245)
at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:100)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1446)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:67)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1464)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:263)
at gobblin.util.WriterUtils.getWriterFS(WriterUtils.java:269)
at gobblin.qualitychecker.row.RowLevelPolicyCheckerBuilder.build(RowLevelPolicyCheckerBuilder.java:82)
at gobblin.runtime.TaskContext.getRowLevelPolicyChecker(TaskContext.java:256)
at gobblin.runtime.Fork.(Fork.java:128)
at gobblin.runtime.Task.run(Task.java:156)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

Seems the Hadoop version you are building with is different from the version.
Have you tried using option -PhadoopVersion=[your-hadoop-version] for build?

please refer the below issue.
https://github.com/linkedin/gobblin/issues/786
iam did same as per the above issue.
but facing mentioned isse in this current issue 810

please let me know the status of this?

So are you blocked on this Issue or on #786?
The resolution for #786 is to run gradlew clean assemble -Pversion=gobblin_0.6.2-180-g5a11598
The resolution to this issue would just be to add -PhadoopVersion=[your-hadoop-version] to the build command.
So the final command would look like: gradlew clean assemble -Pversion=gobblin_0.6.2-180-g5a11598 -PhadoopVersion=[your-hadoop-version]

I tried with as u mentioned above command but facing the issue:
FAILURE: Build failed with an exception.

Where:
Build file '/opt/buildgobblin/gobblin-master/gobblin-compaction/build.gradle' line: 57

What went wrong:
A problem occurred evaluating project ':gobblin-compaction'.

Could not resolve all dependencies for configuration ':gobblin-compaction:runtime'.
Could not find org.apache.hadoop:hadoop-core:2.6.0.
Required by:
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-api:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-utility:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-metrics:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-tunnel:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598 > com.linkedin.gobblin:gobblin-hive-registration:gobblin_0.6.2-180-g5a11598

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Can you try
gradlew clean assemble -Pversion=gobblin_0.6.2-180-g5a11598 -PuseHadoop2
-PhadoopVersion=[your-hadoop-version]
On Thu, Mar 10, 2016 at 12:52 AM, madhukotagiri<EMAIL_ADDRESS>wrote:

I tried with as u mentioned above command but facing the issue:
FAILURE: Build failed with an exception.

Where:
Build file
'/opt/buildgobblin/gobblin-master/gobblin-compaction/build.gradle' line: 57
What went wrong:
A problem occurred evaluating project ':gobblin-compaction'.
Could not resolve all dependencies for configuration
':gobblin-compaction:runtime'.
Could not find org.apache.hadoop:hadoop-core:2.6.0.
Required by:
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-api:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-utility:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-metrics:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-tunnel:gobblin_0.6.2-180-g5a11598
com.linkedin.gobblin:gobblin-compaction:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-core:gobblin_0.6.2-180-g5a11598 >
com.linkedin.gobblin:gobblin-hive-registration:gobblin_0.6.2-180-g5a11598

Try:
Run with --stacktrace option to get the stack trace. Run with --info
or --debug option to get more log output.
BUILD FAILED
—
Reply to this email directly or view it on GitHub
https://github.com/linkedin/gobblin/issues/810#issuecomment-194740021.

@madhukotagiri did you get this working?


It's possible to set the same name for different projects.

When creating a project, if the name is already taken, the server will send an error message saying the name is taken. However when editing a project (POST /projects/{id})  coderadar gladly accepts any name even if another projects already has it.

See #260


ERROR: Could not find a version that satisfies the requirement banpei

I am trying to do pipenv install banpei in my virtual env, it is throwing the following error:
Installing banpei…
Error:  An error occurred while installing banpei!
Error text:
ERROR: Could not find a version that satisfies the requirement banpei (from -r /tmp/pipenv-00uw2ca1-requirements/pipenv-x3l4m4in-requirement.txt (line 1)) (from versions: none)
ERROR: No matching distribution found for banpei (from -r /tmp/pipenv-00uw2ca1-requirements/pipenv-x3l4m4in-requirement.txt (line 1))

This error occurs because banpei has not registered with PyPI.
Therefore, the command "pip install banpei" is not valid.
Follow the "Installation" in the README and download banpei to your local environment with "git clone" command.
Thanks to this issue, I started thinking about registering banpei with PyPI!
Thank you!


feat: Document project

generate vimhelp to html
push to Netlify: All-in-one platform for automating modern web projects. / GitHub Pages | Websites for you and your projects, hosted directly from your GitHub repository. Just edit, push, and your changes are live.

inherit Closed #34

参考:
GitHub Action at Netfliy deploy

GitHub Actionsを使ってNetlifyにデプロイ // Learning Diary
lowply/build-hugo: A GitHub Action to build Hugo site.
actions/cli at master · netlify/actions
srt32/git-actions: A GitHub Action to run arbitrary git commands

vim help to html

vimdoc-ja-working/buildhtml.vim at master · vim-jp/vimdoc-ja-working

ヘルプのリンクについて、Vitalの正式な記述になってるかチェック

GitHub Pagesでのデプロイ完了


Retry GrpcStore write

Description
When writing to the GrpcStore retry was not implemented as there was no easy way to rewind the stream.  However, most errors due to high concurrency occur before any data has been written.  Therefore, refactor the GrpcStore::write such that it can retry if the stream has not yet been used.
Fixes #325
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
High concurrency use of the GrpcStore, no longer producing errors from the ByteStreamServer.
Checklist

[ ] Updated documentation if needed
[ ] Tests added/amended
[ ] bazel test //...  passes locally
[ ] PR is contained in a single commit, using git amend see some docs

This change is

This still doesn't resolve the issue:
[2023-10-19T12:59:48.159Z ERROR bytestream_server] Write Resp: 0.5610117 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.159Z ERROR bytestream_server] Write Resp: 0.56068933 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.159Z ERROR bytestream_server] Write Resp: 0.561223 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.160Z ERROR bytestream_server] Write Resp: 0.5613128 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.160Z ERROR bytestream_server] Write Resp: 0.56141317 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.160Z ERROR bytestream_server] Write Resp: 0.5612801 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.161Z ERROR bytestream_server] Write Resp: 0.56190264 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.161Z ERROR bytestream_server] Write Resp: 0.56241786 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.161Z ERROR bytestream_server] Write Resp: 0.5626644 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.162Z ERROR bytestream_server] Write Resp: 0.5632102 None Status { code: Unknown, message: "status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} } : in GrpcStore::write : in GrpcStore::update() : Error updating inner store : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.468Z ERROR bytestream_server] Write Resp: 0.000052174 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 491 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.472Z ERROR bytestream_server] Write Resp: 0.00005941 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 75 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.487Z ERROR bytestream_server] Write Resp: 0.000068874 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 76 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.504Z ERROR bytestream_server] Write Resp: 0.000075709 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 160 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.525Z ERROR bytestream_server] Write Resp: 0.000096294 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 94 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.527Z ERROR bytestream_server] Write Resp: 0.000058501 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 335 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.533Z ERROR bytestream_server] Write Resp: 0.000061099 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 81 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.533Z ERROR bytestream_server] Write Resp: 0.000042423 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 78 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.680Z ERROR bytestream_server] Write Resp: 0.000070509 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 79 : In ByteStreamServer::write()", source: None }
[2023-10-19T12:59:48.711Z ERROR bytestream_server] Write Resp: 0.000055012 None Status { code: InvalidArgument, message: "Received out of order data. Got 0, expected 306 : In ByteStreamServer::write()", source: None }


Add leaveOpen overload to Stream handling methods

It would be very kind if you could add this overload to ObjMaterialFile and ObjFile, otherwise underlying streams are automatically disposed and have to be reread or copied.

Hello,
I've modified the code to always leave the stream opened.


Possible chance to simplify the script and let Google do the heavy lifting (data merging)

I noticed in the docs for the latest (3.0) API for Contacts at the top there is the following note:
Note: For read and write access to users' contacts, use the People API, which provides
both contact and profile information using JSON instead of the older GData protocol.

which links to the People API, which seems to be a merged datasource for contact info and profile data from various sources (I'm guessing primarily Google+). I haven't dived deeply into it (I am not registered for anything other than Contacts, and am hesitant to start registering for other things just to test this API). It would be nice if someone who already has access to Google+ etc wants to test whether this API is relevant and adds any value, or is just a red-herring...

I think I had looked into this while performing the major rewrite of
version 3, but it could have changed and/or I could be misremembering, so
feel free to correct me on this: I'll look into it accurately as soon as I
can.
I don't think the People API is integrated into Google Scripts: if we
wanted to use it we would need to implement OAuth which would make it
impossible for users to simply copy-paste and deploy.
Il lun 19 mar 2018, 16:39 Rowan Thorpe<EMAIL_ADDRESS>ha
scritto:

I noticed in the docs for the latest (3.0) API for Contacts
https://developers.google.com/google-apps/contacts/v3/ at the top there
is the following note:
Note: For read and write access to users' contacts, use the People API, which provides
both contact and profile information using JSON instead of the older GData protocol.
which links to the People API https://developers.google.com/people/,
which seems to be a merged datasource for contact info and profile data
from various sources (I'm guessing primarily Google+). I haven't dived
deeply into it (I am not registered for anything other than Contacts, and
am hesitant to start registering for other things just to test this API).
It would be nice if someone who already has access to Google+ etc wants to
test whether this API is relevant and adds any value, or is just a
red-herring...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/GioBonvi/GoogleContactsEventsNotifier/issues/102, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AMtwUo8bM9jWxRuzHbEFKnCDNgeImN8Dks5tf9FHgaJpZM4SwZOx
.

--
Giorgio Bonvicini
Email<EMAIL_ADDRESS>Hangouts<EMAIL_ADDRESS>Skype: Giorgio Bonvicini - giorgio_bonvi -<EMAIL_ADDRESS>Chiave PGP
http://keys.gnupg.net/pks/lookup?op=get&fingerprint=on&search=0xE2A36C2BDBA60BA4

Ah, OK. That sounds suspiciously like either a red herring, or a way-too-much-effort-for-too-little-return thingy. I'll leave it up to you when/if to close this then, based on how motivated you or anyone else feels.

...actually, on this page when you look at Google Contacts API it says "GData version is still live. Replaced by Google People API for read-only access." which seems to fit with the quote in my previous comment saying "use the People API ...using JSON instead of the older GData protocol.". It seems the way we are talking to Google Contacts has been deprecated either way, unless I am misreading it.

I don't think our way has been deprecated, since we do not use the Google Contacts API directly, but the ContactsApp class (which I imagine uses the API behind the scenes).
The documentation is not exactly clear regarding this topic, but this is what I think I have understood:

there are a great number Google APIs which require some form of authentication to be used (API keys, OAuth...) making them unsuitable for us given the choices we have made for this project.
In the last years some of these APIs have been transitioning from v1 to v2 and very recently v3 making important changes and bringing in new features (like the one you found out)
a small subset of these APIs are made accessible in Google Scripts via some special classes. These do not require any other form of authorization other than the "granting rights" step we all know.
The complete list of these APIs can be found in the left side menu of this page: those labeled as "G Suite Services" are available in Google script with no setup, while those listed under "Advanced Google Services" needs to be enabled in the settings of the project like the Calendar and Google+ APIs we already use.


NDS-181: Stop enforcing unique volume and stack names

Updated API server to no longer enforce unique stack and volume names, since IDs are unique.

Test case passes... merging


Update types

bunch of plumbing shit happened today and this evening, which i'll describe here for the benefit of anyone who cares
today taylor deployed the full contract suite, which consisted of like 5 solidity repos, onto the major testnets (except ropsten). this was the culmination of work that chris did to separate modules out of the core-contracts repository.
in addition to simply moving code between repos, there was a new smart contract that was added, and some smaller changes to existing contracts.
because these contract ABIs have changed (slightly), we needed to identify and rectify those changes in our react codebase (the places where our frontend code was fetching data from the chain, or pushing data to the chain), else errors would occur because chain data would be malformed for what the react codebase was expecting.
unfortunately, this wasn't as easy as simply copying in a new typechain-types directory from "the" contracts repo, because now there are 5 contracts repos, each with their own typechain-types contract type definitions.
in addition, we created a new NPM module (@fractal-framework/core-contracts) which includes all of the core solidity contracts (needed for module developers to inherit the proper base contracts), and the typechain definitions from those core contracts (our intention being that this would be good and helpful for anyone building client-side tooling that interacts with fractal DAOs, such as our webapp).
so, the plan was to remove the existing single big typechain-types directory from the frontend, then npm install @fractal-framework/core-contracts to get access to the core-contracts typechain definitions, then manually copy over all of the module typechain-types directories back into the frontend app. with all of these up-to-date typechain definitions (matching what was deployed on-chain earlier today), we could let our typescript compiler simply tell us what, if anything, was now broken in our frontend app.
for the most part this went well. it was good and easy to manually copy in all of the typechain-types directories from module repos into the frontend codebase.
i ran into a problem, though, with the npm published core-contracts typechain definitions. simply publishing the typechain defintions (which are pure typescript files, including both types, and some actual typescript implementation code) to NPM doesn't work. all NPM modules are expected to be javascript files, and optionally include typescript type files. by default a consuming typescript repo will not compile typescript in npm modules, those are expected to be compiled already.
so, i had to change our build + publish process in the core-contracts repo a bit, to actually compile those typechain-types files down into javascript+types files, and publish those, which is what our frontend could then consume (in addition to the actual solidity files, which is what module developers will need).
blah blah blah, i went through this whole process, got it working. at the end of the day, there was really only one small actual breaking change between the new contract ABIs and our frontend code, which was trivial to fix. so yay!
i also made sure to check each of the module repositories, which also have the @fractal-framework/core-contracts package as a dependency (to get access to the base solidity files needed for module inheritance), and there were no problems there thankfully.
we still need to actually deploy some new DAOs on these new contracts and make sure the frontend behaves as expected, but i'm feeling confident for our mainnet shenanigans next week.

Getting an error message when trying to deploy a new DAO. I've tried locally and on netlify deployment site.

gonna need @christopherdancy or @tbwebb22 to chime in here... this is above my pay grade

As previously communicated with @tbwebb22:
My gut says that it’s related to those subtle changes in Governor, and the way that data is being formatted/passed into Metafactory.
I think the next step with testing is to copy over Governor and other supporting contracts over into Metafactory mocks, and hopefully the tests fail.
Fixing the tests should inform us of how to fix the frontend.
I was trying to debug it last night but it was hard. I finally realized that the best approach was to probably bring the contracts in the Metafactory “mocks” folder up to date with current (deployed) Governor and Treasury code. And then the tests in that codebase would hopefully fail, but it would be a lot easier to debug there, than across all these different repos. But by the time I realized that it was so late so I went to bed.

Can confirm DAO creation is successful, nicely done @tbwebb22

@Da-Colon @tbwebb22 this seems good now, thank you taylor! do you guys mind leaving approvals on here so we can merge?


Migrate to native injectTypes function

Replace addDts utility from AIK with native injectTypes function

I had to remove the test for type generation. I tested the types inside the playground and the types worked.


Question: Is there support for setting the chart style?

Hi,
When creating charts it would be nice if one could set the chart style, is this possible?
Thanks for this great PowerShell module!

I will investigate. Please could you post sample data and a script.

EPPlus is used to create the xlsx file. Need to see if -ChartStyle is implemented and go from there

Turned out to be tricky? I did try your suggestion but no dice unfortunately. I'll survive :-)


Enhance CMake build configuration

The current config is full of duplicated code and is lacking a lot of helpful features:

[ ] code formatting: clang-format (it could be integrated here)
[X] static analysis: clang-tidy
[ ] dynamic analysis: sanitizers, valgrind, etc

Useful resources:

https://cliutils.gitlab.io/modern-cmake/
https://github.com/friendlyanon/cmake-init/

Pretty much done, will split the small tasks into other issues