Would it be possible to release code in Python 3.4+ for any future repos?

I find this repo is a reference in this domain and highly important. I just hope we could migrate to Python 3.4+ for any future repos, so that we're future-oriented and moving forward.

@jli05 would you mind stating the pros and cons of this in the context of nmt and dl4mt repo here, thanks a lot.

Basically I hope this and future repos achieve more than merely as a tool for academic research.
Cons:

Time on refactoring the current software/data systems to work with Python 3.4+. The amount of effort is proportional to the size of current systems.

Pros:

Evolving with time. Python 2.7 is entering the End Of Life cycle till 2020 (PEP 373); Ubuntu is phasing out install of Python 2.7 by default. It's not hard to imagine newer releases of RHEL will adopt similar policies.
Allows other parties to contribute who're developing with modern choice of languages.
Allows constant maintenance of the repos so that it's a thriving experience for whoever maintain them.

Theano is one of the rare academic repos that's constantly maintained and streamlined, which can rival commercial offerings in a certain aspect. If we google for BlinkDB, the last commit was two years ago -- it remained a good concept that earned the author a paper. I believe software has wider and deeper impacts than publications today. I know this repo was initially put together as a tutorial; however I'd wish more for it and all future sequels: to be a point of reference for NMT, which showcases excellence in algorithm and brick-and-mortar code.

@jli05 Thans for sharing your view! I think this definitely makes sense.
@orhanf How about we don't fully validate the changes (as in training a full model and verifying that the same BLEU scores for all the models and language pairs we've tried), but simply make it runnable with Python3?
@jli05 Would you kindly help us move toward Python3 by making a PR for, say, one of the sessions?

Sure I'll do it in the coming 1-2 weeks. Thanks @kyunghyuncho @orhanf !

Could we confirm what's the exact workflow in data/?
My understanding is that for a simplest setup, we could run setup_local_env.sh. Is that sufficient? We made no call to preprocess.sh therein?
All the sessions take in the tokenised wiki dump and its associated dictionary from wiki.tok.txt.gz and wiki.tok.txt.gz.pkl. Currently we don't have scripts for generating them?

@orhanf can you answer this?

@jli05 , a detailed description is provided with #53 but let me clarify this further here.
setup_local_env.sh was the initial script provided in the repo, intended to download an example data and preprocess it (only tokenization). Later on, in order to use subword-units (bpe), another script was added (preprocess.sh), which pre-processes existing data (tokenize, learn bpe, apply bpe and shuffle)
We now merged both functionalities into setup_local_env.sh and made it to call preprocess.sh optionally (with -b flag) when you want to use bpe.


image: snapshot should exclude _start export

This was implemented by ignoring the export, not excluding it. See #41.


Implement yarn completion

Description
This PR will implement yarn completion from the external vendor
Motivation and Context
Yarn is required while developing the nodejs projects and often as project grows completion is required. This PR fixes that problem.
How Has This Been Tested?
Locally by sourcing
Screenshots (if appropriate):

Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[x] If my change requires a change to the documentation, I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] If I have added a new file, I also added it to clean_files.txt and formatted it using lint_clean_files.sh.
[x] I have added tests to cover my changes, and all the new and existing tests pass.

@NoahGorny @davidpfarrell could you review it and merge. I need it urgently

@davidpfarrell Any reason why arent we using git submodules?

Also wondering why 2207 vs 1090 in your case?

Fixed lint errors

@davidpfarrell @NoahGorny can we merge this if everything is fine. My team is waiting for this

Sorry @tbhaxor  my previous comment was a request-for-changes comment, re:

Changes I do recommend:
Add repo url to about - Not sure if there's a built-in meta tag for it?
Add the SC1090 line from the examples - Not sure why its not hitting but I'm sure it will in the future and don't want to break future builds because of it.

@davidpfarrell SC1090 is not triggering on my end either, but 1091 is triggering. Do you want me to disable it also?

@tbhaxor Does 1091 trigger even when disable=SC1090 is present?
The two codes are related and in this case 1091 is being triggered by new-ish behavior for 1090 errors.
But it's unclear from the docs if disabling 1090 also disables 1091 in this special case.
My thought is is might so try just disabling 1090 and see if that clears ...
Alternatively you could add source=../../vendor/github.com/dsifford/yarn-completion/yarn and make shellcheck happy :)

https://www.shellcheck.net/wiki/SC1090
https://www.shellcheck.net/wiki/SC1091

Again, where did you get it triggered or just assuming it could trigger?

Failing lint errors presumed fixed in #2192 which has been merged ...


update README.md for iFan03

update README.md
add entry for iFan03

could you please open an issue and either post sonoff-debug dump or give a quick explanation how the switches must be on (only 1 switch ON for particular speed or incremental). i think it could be nicely added as a fan-like entity instead of an array of switches


Bad z index when using floating windows/popups

I encountered this issue when using a split window and a completion menu.

Thanks for reporting the issue @DanielCardonaRojas!
The zindex is set to 40 by default, intentionally below the default of 50, so that the scrollbars will go beneath other floating windows that don't specify a zindex.
In case that's not low enough, scrollview_zindex can be set accordingly or scrollview_hide_on_intersect can be set to 1 to force scrollbars to not show when they would otherwise intersect with other floating windows.
Are you using a plugin to show the completion popup? If so, which plugin?

OK awesome I'll play around with that setting to see if I can workaround the issue. Currently I'm using nvim-cmp

I've replicated the issue reported here. I see that the issue arises from nvim-cmp using a zindex of 1 for its documentation floating window. I've opened nvim-cmp PR #661 to change the default zindex to 50, which would provide flexibility for setting a lower zindex for other floating windows.

nvim-cmp PR #661 was merged. @DanielCardonaRojas, after updating nvim-cmp, the scrollbars should be below the documentation.


Fix app bar padding without leading widget

If there's no leading widget, we just want 8.0 pixels of padding instead of all
the padding to get over to the 72.0 pixel key line.
Fixes #2912

@sethladd @HansMuller

lgtm


GIF support??

Possible to support animated URL gifs?
similar to what Telegram does?

@zhgchgli0718

need research

need research

thanks, please let me know if that is possible


update version number and release history for v0.5.0

Part of https://github.com/projectmesa/mesa-geo/issues/143.

LGTM


Upgrades Websocket.Client to 5.1.0 & target framework to Standard 2.1

What kind of change does this PR introduce?
Updates the WebSocket dependency library
Additional context
The new version has a memory usage improvement that I want to benefit from.
As part of the new version it also increased its target to .netstandard 2.1, so I followed suit here. Should that entail a new major version, is that a breaking change?

Unfortunately yes, that’s gonna be a major breaking change. It was something I’d been holding off on for the sake of continuing to target netstandard2.0.
Part of keeping it on 2.0 is maintaining compatibility with UWP and NET Core <3.0.
Any thoughts @wiverson ?

Here's my superspicy take -
Current Unity and Godot both support netstandard21+.
I don't get the sense that there is a lot of UWP or .NET Core <3 usage, but I'm not sure how to verify. I honestly can't keep track of all of the .NET stuff, between MAUI, Blazor, etc etc etc.
More generically, I think that open source projects in general should support current/LTS versions of software but not bend over backwards to support legacy systems. If enterprises want to maintain backports for out-of-date or old stuff then they should kick back some cash to support that. Maintaining open source projects is already hard enough, supporting enterprise/legacy that doesn't kick in seems like a bit of a reach.
My suggestion - mark the current version of the lib as the last to support netstandard20. Bump the major version and move to netstandard21 and do a few of the other breaking changes in some of the other issue/feature requests as part of the new major. Include a note that if there are any enterprise customers that want netstandard20 support going forward there are a bunch of consultants standing by and willing to help.

A spicy take @wiverson - but compelling!
I do agree that we should focus on providing support for current LTS versions (and agreed, really just a good approach for open-source libraries in general). After some more research, moving to target netstandard2.1 will exclude developers who target ASP.NET. Since the c# repos do get issues asking about ASP implementations, I'm reluctant to stop providing updates for them.
But! I think I've found a solutions that's a "best-of-both-worlds" (to a degree).
We can adjust the library to target both netstandard2.0 and netstandard2.1.
All it requires is specifing that project include different nuget packages according to which target that's being built. And since Websocket.Client doesn't have too many API changes between 4.7.x and 5.x (outside of its target framework), it's not difficult to provide a compiler directives to support its last version for netstandard2.0.
<TargetFrameworks>netstandard2.0;netstandard2.1</TargetFrameworks>

<!-- ..... -->

<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
        <PackageReference Include="Websocket.Client" Version="4.7.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1'">
        <PackageReference Include="Websocket.Client" Version="5.1.1" />
</ItemGroup>

And...
#if NETSTANDARD2_0
using Websocket.Client.Models;
#endif

Given that, the netstandard2.0 version will continue to receive updates that affect the present codebase but be locked to the<EMAIL_ADDRESS>and the netstandard2.1 version will receive both updates to the codebase and the Websocket.Client.
Provided y'all think that's a sustainable approach, I'll adjust this PR and move on from there!

ASP.NET Core uses .NET 8 according to the docs I just skimmed. I vaguely seem to recall there's an older version of ASP.NET that has the same name and kind of goes back to the JSP days. Are we sure which version[s] folks are using nowadays?
That conditional in the build cracks me up. Instead of an == for the netstandard2.1 line is there a != netstandard2.0 version? Might be more resilient for future builds?

lol doesn’t it? But apparently that’s the way multi-target builds are done.
And yep. You’re right, the current version does support .NET 8. I swear the naming schemes of dotnet’s stuff is so convoluted… apparently the big drawback of moving off is that it would lose support for .netframework and UWP. I recall users several years ago asking for support with that - but it was several years ago.
I wish there was a way to poll usage by framework or something.

@lourd - please try the latest versions of either Supabase.Realtime or Supabase.Client! Thanks for your help/input on this!

Tried it out the new versions in my project and everything works great! Thanks @acupofjose! Love the package and namespace naming cleanup, too 🧹❤
Relatedly, using supabase-csharp in a Unity project build for WebGL now no longer crashes immediately upon boot. That was also part of my motivation here. Documenting my learnings in figuring that out here https://github.com/supabase-community/supabase-csharp/discussions/151

@lourd glad to be a help! Really appreciate that writeup/deep dive you did over in the discussions. That was not a small effort!


Release/0.4.6

Add log and Get accessKey from default account in intializeApp method.

Thanks for review!


Added Changelog

I copied the content from releases.
I know there still had some missing part in some versions, but it's too long ago.

Coverage remained the same at 94.158% when pulling 0cdefc7338a4daa0bdc2566f839c77e21c8db68b on feature/changelog into 86aa5c277362b18501dbe7a79f569a15bb63910c on master.

Looks good 👍


HHH-10942 - Session not flushing starting from 5.2.0 in Karaf + Aries JPA & JTA

https://hibernate.atlassian.net/browse/HHH-10942

applied upstream


Fix synchronous call with moshi responseObject() to return T instead of Any

This looks nice 😃

Great for me ... @rwhite226 Would you mind adding the test to check the type?


Correctly document cordova dependencies

Hi @wrobins
Just noticed in passing that master moved the cordova requirements into the "dependencies" section, which suddenly starts installing a whole raft of additional packages.
I've tweaked this so it hopefully aligns as per https://cordova.apache.org/docs/en/10.x/guide/hybrid/plugins/index.html#specifying-cordova-dependencies .
Also, do you have a timeline for when an official release (or at least another alpha build) might drop?
Thanks for the work on the plugin here!

Hi @peitschie!
Thanks for the fix and for supporting this plugin!
Indeed - apologies for the lack of development this past year; my day job plus a few other things have taken up most of my time and I haven't been able to work on this plugin as much as I would have liked. However, that said, I have recently started back up these last couple of weeks and we should see a release "soon™" with browser support, with Windows support hopefully following shortly thereafter. I've also seen a few requests for dynamically setting the Client ID at runtime, which wasn't possible initially because of an Android limitation. However, I've looked and it looks like the Android MSAL library supports that now, so I'm going to add that here soon, too.

No worries at all @wrobins ! As a working professional, I can completely appreciate and understand how many of these things can only have sustained development when they align with the day job 😄
I appreciate all the work you've done here! Please don't consider my question anything other than an expression of interest in your work 🙂


Support for mixed objc/swift projects

For external components, the current plan is to use the dynamic api. Since this lives in objc, we need a way to re-expose RLMResults or RLMObjects used internally by the component as swift objects.

I don't think this is the appropriate approach. Wouldn't offering a dynamic Swift API solve this problem in a more elegant way?

This PR: https://github.com/realm/realm-cocoa/pull/2213 introduces dynamic api methods in Swift. I will close this for now.


Adding new challenges

Currently, the challenges are inserted to DB from 'md' files by running seed command. So if a new challenge is added in the master branch would that be an' md' file too? Or do we have to manually create one? Correct me if I am wrong. My understanding is that new courses are added to the branch and we can just pull the latest, run the seed command and get those in our local env.

Hey @saliha-naico.  If you're just wondering how to get the most up-to-date versions of all the challenges that're currently on master, then yes, just pull them down.  You can use npm run seed:challenges to populate the database, though that may not be necessary depending on what you're doing.

The instructions for these are available for the most part in our Guidelines for Contributing, you can specifically follow this guide and related resources on the same.


Error in Colab

Describe the bug
I ran this command in Colab:
!pip install autogluon
Then, I import TextPredictor:
from autogluon.text import TextPredictor
unfortunately when I ran this command it printed this wrong:

Expected behavior
That program run with no errors and I can fit the model with TextPredictor.
To Reproduce
https://colab.research.google.com/drive/1QYXD0QzC5p9Dl9v6Aw_ptMXM1I_aagwI?usp=sharing
Info
No wrongs with autogluon.tabular

!pip freeze

Output
torch==1.11.0
torchaudio @ https://download.pytorch.org/whl/cu113/torchaudio-0.12.0%2Bcu113-cp37-cp37m-linux_x86_64.whl
torchmetrics==0.7.3
torchsummary==1.5.1
torchtext==0.13.0
torchvision==0.12.0

@icarosun This issue has been fixed in the 0.5.1 release.

Feel free to reopen if you still find it's an issue.


A lot of broken links

Some I found:
https://reactjsnews.com/contact/
http://reactjsnews.com/isomorphic-javascript-with-react-node/
http://reactjsnews.com/testing-the-easy-way/
After clicking around, I can find more broken links.

It's a weird problem with GH pages. Remove the slash on the end, and the
url loads.
On Sun, Oct 30, 2016 at 8:17 PM Harsimran Bath<EMAIL_ADDRESS>wrote:

Some I found:
https://reactjsnews.com/contact/
http://reactjsnews.com/isomorphic-javascript-with-react-node/
http://reactjsnews.com/testing-the-easy-way/
After clicking around, I can find more broken links. I really like the
content on the website, would love for the links to be fixed.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Legitcode/ReactJSNews/issues/43, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAbacG15KjAqfx9AHyRPK3nURwiQTAoHks5q5TN6gaJpZM4KkjaD
.


Open icon still presented when show-options is false

Hi!
Im using multiselect for tags field, and i do not have prefilled options, so i set 'show-options' to false, but open icon still visible(

Thanks for reporting @mokone91  - fixed in 2.3.0


[Fix] Migration 136 (be less aggressife to open pulls missing git files)

as title - make try runn again

Something to check with our new linter? Avoiding references to models in migrations. 😄


LibVMI Support

Here's an interesting use case for IncludeOS.
I have been getting a lot of questions with respect to LibVMI support in Bareflank. Bareflank itself should be able to support some basic applications, IncludeOS and a stripped down Linux VM sometime early next year. Application support for something like LibVMI would be ideal, but it might take a little bit depending on how many POSIX functions it relies on as it uses a library IIRC from GNOME to provide data structure support (it's written in C so data structures are a pain).
The question I have is... how hard do you think it would be to provide LibVMI support in IncludeOS? The use of LibVMI would still be a C++ application, written as any inside of IncludeOS. The difference is you would have to statically link in LibVMI and it's supporting libraries which are not many. LibVMI is used by a lot of reverse engineering hackers, and a version of it that runs inside of a unikernel that supports things like Xen / KVM would be of interest to a lot of people I would imagine. On our end, getting LibVMI to work inside IncludeOS would mean that we would be able to kill two birds with one stone (getting IncludeOS support and LibVMI support at the same time), and I think it would broaden the user base for IncludeOS to not just WebServers but also reverse engineers and security researchers.
Thoughts?
@tklengyel

AFAICT the trick is just going to be compiling all libraries statically into the final IncludeOS binary. For the most part this should be straight forward, although I haven't yet found examples of how to hook such static linking into the build-process here. The one library that will be interesting to get statically linked will be libglib-2.0. While it can also be linked statically with the final binary, it has a dependency on pthread (see https://developer.gnome.org/glib/2.50/glib-building.html). While we are not using any threading in LibVMI, or any glib function that would do in the background, the dependency still needs to be resolved somehow.
It seems IncludeOS doesn't support threading/POSIX at this time so I'm not sure how the build process would cope with that. Since we just need it to build, having a dummy layer for pthread would suffice, and from the Wiki it sounds like this might already be the case (https://github.com/hioa-cs/IncludeOS/wiki/FAQ#will-includeos-become-posix-compliant).

@rianquinn @tklengyel thanks for posting. This sounds interesting - we're doing a POSIX sprint right now and we'll most likely be adding a minimal pthreads implementation as well, hopefully before the holidays. The goal being exactly this, to make it easier to integrate existing stuff.


image not showing

Yeah! +1
Same issue!

I use v-lazy component for vue, and got the same problem. First images in viewport when I just loaded page is normal. But when I start swipe to other images, some of them still loading for long time.


pg_advisory_lock fails for knex

Hi,
I'm trying to use pg_advisory_lock, but in order to make it working properly I have to setup new connection for every bunch of locked queries.
const startTime = Date.now()
const id = Math.random()

const _knex = new knex(config.get('db_server'))   // this works
//const _knex = require('./knexInstance')           // this utilizes single session and reuse locks

console.log(id, 1, Date.now() - startTime)
        Promise.all([
            _knex.raw('select pg_try_advisory_lock(1,1);')
                .then((data) => {
                    console.log(id, 2, Date.now() - startTime, 'one lock!: ', data.rows)
                    return true
                })
                .then(() => Promise.all([
                    getTimeout('All', 10000)
                        .then((message) => {
                            console.log(id, 3, Date.now() - startTime, message)
                        })
                ]))
                .then(() => _knex.raw('select pg_advisory_unlock(1,1);'))
        ])
            .then(() => {
                console.log(id, 4, Date.now() - startTime)

                response.json({})
            })

        function getTimeout (message, time) {
            return new Promise((resolve, reject) => {
                setTimeout(resolve, time, 'Block! ' + message)
            })
        }

Is there a good way to setup different sessions for different queries in knex to reuse pooling?
I know that I can use transactions, but I'd prefer to avoid using them.

You can make multiple knex instances without connection pooling or pool size 1 for those queries which should be sent to specific connection. I've never tried that though.

Thanks for suggestion, this is exactly the thing I have to do now. But it is kind of a performance killer, setting up a TCP connection is one of the most expensive tasks.

I believe that poolsize 1 actually still reuses that one connection between requests, so you don't have to make new tcp connections all the time... But with that you would kind of need to create pool of knex instances with single connection, which sounds pretty annoying.
Anyways if you like to have this feature, I could set this issue as feature request. Probably similar API to transaction API could work for allowing to sending multiple queries to same connection.

You're right.
I need to have a new API to manage database sessions while reusing connections.
It would be definitely great to be able to bind single session to particular business logic like it is done with the transactions.

@elhigu
This issue should not be closed this way.

The transactions are NOT the locks.
There are pg_advisory_lock and pg_advisory_xact_lock
There's the official clause that you should not use plain locks with transactions

Please study how the locks work: https://vladmihalcea.com/how-do-postgresql-advisory-locks-work/
This issue should be solved with either proper feature request or with a statement that knex has no plans to support the locks.

@elhigu there's no need to implement this for a single dialect. The problem is KNEX takes new connection from pool for each query which makes advisory lock useless.
As long as locks are bound to sessions there should be a way to 'lock' a connection in the same manner as transaction does. But there should be the explicit API for that.
And yes, I don't like the idea of using transactions in place of the lightweight locking.

@omeid yes, in transaction you should use pg_advisory_xact_lock my point being, if you like to use locks like transactions, why not use real transactions + xact locks instead.
Maybe there is a valid use case for needing that, but I'm failing to see it (usually its just because of bad design and causes unexpect problems, if people are not super careful with their code). If its just micro-optimization to prevent need for extra begin / commit queries, it might be significant in some rare cases...
Anyways I repeat and emphasize from my last comment:

If there is need for a feature to have an additional API for advisory locks (which should be as much DB agnostic as possible) then proper feature request is needed.

and for @wingedfox

Current way to use them is to use knex.raw() and the other issue of not being able to select connection where to send queries is a separate issue.


Update component generator

some fixes, some style changes e.g. to use $componentController instead of homegrown makeController

Current coverage is 94.05% (diff: 100%)

Merging #73 into master will not change coverage

@@             master        #73   diff @@
==========================================
  Files            37         37
  Lines           454        454
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            427        427
  Misses           27         27
  Partials          0          0

Powered by Codecov. Last update 09f9d83...d995a8b


trigger a warning when multiple species with the same name are written to SBML

Trigger a warning if there are multiple species with the same SBML name is added to the SBML model. Not sure how to test for this though. A leftover task from #131.

This is not an issue any more. It probably was an issue at an earlier point of time, but I checked just now by creating a CRN with two species with exactly the same name and only one was added to SBML (so SBML is still valid - no duplication).


tidyverse option of the data wrangling

Feels like a brave new world to me, forking, committing, pull requesting.

and the jupyter version is here:
[(https://www.kaggle.com/karlcottenie/introduction-to-machine-learning-in-r-tutorial/)]


Provide visual indicators for dropped scores in categories

Provide visual indicators (design TBD) of dropped scores in the following parts of the interface when Drop Highest / Drop Lowest / Keep Highest are enabled for categories in the Gradebook:

The Spreadsheet Interface

Grade Summary / Student Review Mode Windows

Student View

This will need some thought as the drop/keep items are calculated on the fly. The drop/keep item is probably going to need to have a flag persisted, perhaps as a bulk job overnight or whenever a score is added for a student, an even can be triggered to determine which one it is for the student. Will also look into how gradebook classic does it.

Discussed 10/3/17: The category and course grade scores are recalculated every time a new grade is entered and the CourseGrade is returned. This could include the GB items that were dropped. This would be far better than the previous option.


Update Basket Signals

This PR follows this google group topic
Here the changes:

Add basket_removal signal
Add quantity and purchase info to signals arguments
Handle basket_removal and basket_addition on basket variation, remove line, save for later and reorder events
Add basket and reorder tests
Add names to basket update buttons to be able to reference them in tests
Update documentation

A view notes:

I didn't touch the analytics app, now the basket_addition signal would be raised more frequently and it would have a slightly different meaning. Is this ok?
I didn't change the current basket behaviour as new tests highlight (apart for signals handling):

basket quantity variations are ignored if a user click save for later
basket quantity variations are saved if a user clicks remove (line)

I got the purchase_info from basket line when this was possible. Is this the best way to obtain it?
This PR is related  to #1136

Cool! Is it possible to move the code out of the view and in a separate utility function? Or perhaps move it to the form?

Hi Michael,
Here some thoughts about the BasketView:
I could move  L247-L265 lines outside ``formset_valid()` in a proper method.
The  other signal related lines are simple send calls.
The tricky part is that signals are raised  only if specific conditions are met:

A save_for_later event disregards any other change in the basket, is available to signed in users only, raises a removal signal for its line.

The remove event saves any other change in the basket, is available to anyone, raises a removal signal for its line, raises addition/removal signals.

The update event saves any other change in the basket, is available to anyone, raises  addition/removal signals.

Using form and formset for raising signals means:

pass request and maybe others parameters to forms and formset
Modify the view behaviour since when save_for_later is True formset.save() is not called.
loop multiple times the formset ( I'm not 100% sure about this atm)

After further considerations I'm going I'm going to move the basket_removal and basket_addition related code inside BasketLineForm and BaseBasketLineFormSet.

The basket signal related logic is outside BasketView now.
The logic is splitted between BasketLineForm and  BaseBasketLineFormSet.
I could use BaseBasketLineFormSet only.
The pro is that I could reduce all the logic into one utility function.
The con is that I should do an additional loop over the changed forms to get the signals arguments and send the signals.

When I think about how this can be used from django-oscar-api, I think it'd be more cleanly separated and loosely coupled if the signal sending code didn't need a view, a request or a form.

@mbertheau Late response...
I did some refactoring this week.
Now the basket variation signal sending code doesn't need a form or a view. I made the request optional.

@itbabu could u plz fix the merge conflict?

@auvipy Done.
@mvantellingen Could you review this PR when you have some time? It got lost in the PR bucket for some months :)

@django-oscar/core I'm not very enthusiastic regarding signals extension and agree with the point - https://lincolnloop.com/blog/django-anti-patterns-signals/, so would pretty much like to know your opinion about this.


Cassandra 19050 trunk

Thanks for sending a pull request! Here are some tips if you're new here:

Ensure you have added or run the appropriate tests for your PR.
Be sure to keep the PR description updated to reflect all changes.
Write your PR title to summarize what this PR proposes.
If possible, provide a concise example to reproduce the issue for a faster review.
Read our contributor guidelines
If you're making a documentation change, see our guide to documentation contribution

Commit messages should follow the following format:
<One sentence description, usually Jira title or CHANGES.txt summary>

<Optional lengthier description (context on patch)>

patch by <Authors>; reviewed by <Reviewers> for CASSANDRA-#####

Co-authored-by: Name1 <email1>
Co-authored-by: Name2 <email2>

The Cassandra Jira

CI j17 j11
LGTM where failures seem TCM merge related

CI j11 j17
Known flakies only. LGTM


Adding links value in molecule.yml breaks converging

Issue Type

Bug report

Molecule and Ansible details
ansible 2.5.3

molecule --version
molecule, version 2.14.0

Molecule installation method (one of):

pip

Ansible installation method (one of):

pip

Desired Behavior
Adding links works as expected
inventory:
links:
group_vars: "../../../../group_vars/"
Actual Behaviour (Bug report only)
instead molecule breaks
--> Scenario: 'default'
--> Action: 'converge'
PLAY [Converge] ****************************************************************

TASK [Gathering Facts] *********************************************************
fatal: [instance]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Warning: Permanently added '[<IP_ADDRESS>]:2222' (ECDSA) to the list of known hosts.\r\nno such identity: /Users/ru.moreira/.ssh/wsclnx-dev.pem: No such file or directory\r\nPermission denied (publickey,gssapi-keyex,gssapi-with-mic).\r\n", "unreachable": true}

PLAY RECAP *********************************************************************
instance                   : ok=0    changed=0    unreachable=1    failed=0

Of course, removing those lines from molecule.yml brings the whole thing back to a working state.

So we test this very scenario.  I cannot reproduce this error.  Also, this was corrected in #1252, where the link is relative to the scenario directory.

I see.  This can be reproduced when using Vagrant driver.

Cannot reproduce


Numerous updates to allow (but not require) handling through Capistrano.

Modified to use project YML, Capistrano native tasks, and cleaner handling of domains without any hosts.

Closing as this is essentially a duplicate of #2


addressing Torchscript compatibility

Making the code torch.jit.script() friendly; torch.jit.trace() is also supported.
See issues/83.

Thank you @SergeySandler for addressing the Torchscript compatibility issue here. Merging your code from Github backward into Google codebase is a little painful. But really appreciate your effort. We will see if we can do it from the Google side and push it forward to Github instead.


Preference variable to suppress Mandatory prompts

The ability to mark parameters as Mandatory is great, but there is one critical omission - the ability to suppress prompts for Mandatory variables for a session.
The main reason this is important is because of unit testing. We want to set certain parameters as Mandatory=$true and then unit test (using Pester) that the parameters are in fact enforced as mandatory.
Unfortunately, this actually causes Pester to pause waiting for input. Our temporary solution is to not use Mandatory.
What we'd like to do is set something like $MandatoryPreference = 'Continue' so that if we miss something, we get an actual error thrown back

The PowerShell team has generally provided guidance that it's not important for cmdlet unit tests to test this behavior - a cmdlet unit test should simply verify that Mandatory is set as expected, e.g.
((Get-Command Get-Command).Parameters['Name'].Attributes | ? { $_ -is [parameter] }).Mandatory | Should Be $false

This way, you leave the responsibility of testing prompting behavior on Mandtory to the core PowerShell parameter binder tests.

I guess that kind of makes sense. I'll feed this back to the rest of my team. HelpMessage should be testable in the same way, right?
I still argue that it would be a good idea to provide this capability, if only to cover situations where you can't control whether the powershell session has been launched with powershell.exe -NonInteractive, or the session wasn't launched with powershell.exe -NonInteractive but you want to change that without restarting it.
Thanks

I think it's a good request.  Here is a scenario.
In a big non-interactive script, we currently hang, when such mistake slips in. Current behavior makes troubleshooting harder. It would be much better to have an option to error-out immediately when script knows that it's not intended for the interactive use.

HelpMessage could be tested in the same way, but we don't generally test the exact message because we rely on code reviews to ensure the messsage is good plus localization makes the test only work on specific locales.
I disagree that this functionality is needed. If PowerShell is not interactive, the parameter binder throws an exception if a mandatory parameter is missing - and this is exactly what you want - report an error, not to ignore it.

Here is an example of a non-interactive runspace throwing an exception:
#3 PS> [powershell]::Create().AddCommand("Import-Module").Invoke()
Exception calling "Invoke" with "0" argument(s): "Cannot process command because of one or more missing mandatory
parameters: Name."
At line:1 char:1
+ [powershell]::Create().AddCommand("Import-Module").Invoke()
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : ParameterBindingException

Indeed, then if somebody wants such check she can write a helper function to start script in non-interactive runspace.

I'm not sure what that example was showing. It doesn't look like anything I'm trying to do.
There's a disconnect here between something which is 'needed' (a poisonous word, IMHO) and something that seems like a good idea. This is definitely in the latter group, given the guidance @lzybkr posted above.
In any case, you're the guys in charge so if you think it's not a good suggestion then we can close it.

I wanted to demonstrate how the PowerShell team would test this behavior (non-interactive) in our tests. A new process works similarly but is much slower:
#4 PS> powershell -noninteractive -noprofile -command "ipmo"
Import-Module : Cannot process command because of one or more missing mandatory parameters: Name.
At line:1 char:1
+ ipmo
+ ~~~~
    + CategoryInfo          : InvalidArgument: (:) [Import-Module], ParameterBindingException
    + FullyQualifiedErrorId : MissingMandatoryParameter,Microsoft.PowerShell.Commands.ImportModuleCommand

In my opinion, adding a preference variable to control this behavior is neither necessary nor a good idea. The variable introduces new complexity that needs to be documented and explained.
I'm closing the issue as I believe I've suggested reasonable solutions to testing the desired behavior. If there are situations I haven't covered, feel free to reopen.

Yeah I'm not sure the second example would achieve what we're after. We'll start looking into using the first example since right now we're not using the Mandatory parameter for a parameter which is mandatory. Instead, we're letting other validation handle that situation which is not necessarily ideal.
Thanks for looking into it anyway

For anyone else having this issue in case you use a Param() block at the beginning of your script, it can be solved like this:

$here = Split-Path -Parent $MyInvocation.MyCommand.Path
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path) -replace '\.Tests\.', '.'

Describe 'input' {
    Context 'mandatory parameters' {
        Describe 'Mandatory paramters' {
            it 'ScriptName' {
                (Get-Command "$here\$sut").Parameters['ScriptName'].Attributes.Mandatory | Should be $true
            }
            it 'CountryCode' {
                (Get-Command "$here\$sut").Parameters['CountryCode'].Attributes.Mandatory | Should be $true
            }
        }
    }
}

I'm writing tests for various scripts that have multiple parameter sets. The above checks for the Mandatory attribute on a parameter aren't quite what I need. For example:
    Param(
        [Parameter(ParameterSetName = 'MatchName', Mandatory)][Parameter(ParameterSetName = 'MatchPattern', Mandatory)][SessionObject] $Session,
        [Parameter(ParameterSetName = 'MatchName')][String] $Name,
        [Parameter(ParameterSetName = 'MatchPattern', Mandatory)][String] $Pattern,
        [Parameter(ParameterSetName = 'MatchPattern', Mandatory)][String] $MatchOn
    )

I want to be able to check that Pattern is passed if MatchOn is passed. If Name is passed, I don't care about that pattern match being mandatory. So I could write some logic that tries to emulate what PowerShell itself is doing, but it would seem more useful to be able to just run the command and see how PowerShell reacts (and without the risk of it sitting waiting for input in the case of a missing param).


google/cloud/location/locations.proto should not be added to the proto files when generating from google/privacy/dlp/v2

Compare the generating result between bazel build and generate_library.sh, google/cloud/location/locations.proto should not be generated even though name: '*google.cloud.location.Locations'* is found in dlp_v2.yaml.
The protoc command in bazel build is (omit unrelevent contents):
protoc --experimental_allow_proto3_optional --plugin=protoc-gen-java_gapic=protoc-gen-java_gapic --java_gapic_out=metadata:dlp_java_gapic_srcjar_raw.srcjar.zip --java_gapic_opt=transport=grpc+rest,rest-numeric-enums,grpc-service-config=google/privacy/dlp/v2/dlp_grpc_service_config.json,gapic-config=google/privacy/dlp/v2/dlp_gapic.yaml,api-service-config=google/privacy/dlp/v2/dlp_v2.yaml google/privacy/dlp/v2/dlp.proto google/privacy/dlp/v2/storage.proto google/cloud/common_resources.proto

The protoc command in generate_library.sh is:
protoc --experimental_allow_proto3_optional --plugin=protoc-gen-java_gapic=gapic-generator-java-wrapper --java_gapic_out=metadata:java_gapic_srcjar_raw.srcjar.zip --java_gapic_opt=transport=grpc+rest,rest-numeric-enums,grpc-service-config=google/privacy/dlp/v2/dlp_grpc_service_config.json,gapic-config=google/privacy/dlp/v2/dlp_gapic.yaml,api-service-config=google/privacy/dlp/v2/dlp_v2.yaml google/privacy/dlp/v2/dlp.proto google/privacy/dlp/v2/storage.proto google/cloud/common_resources.proto google/cloud/location/locations.proto

Remove google/cloud/location/locations.proto in the protoc command can generate the right result.

google/cloud/location/locations.proto is should be added only when it's in the dependency list of a proto_library_with_info target.
This pattern should be searched in BUILD.bazel, rather than in *.yaml.

google/cloud/location/locations.proto and google/iam/v1/iam_policy.proto should be added only when they are in the dependency list of a proto_library_with_info target.
This pattern should be searched in BUILD.bazel, rather than in *.yaml.

So the generator uses the existence of certain protos to decide if we should generate some code or not? That does not sounds like a good design decision but at least I see that it is only affecting reflec_config.json and tests.
In addition, do we know what else possible protos could be added to proto_library_with_info? For example, I'm curious why google/longrunning/operations.proto is not affected by this issue and how it is different?

After doing some investigation, I have the following:

dependencies in proto_library will not go to result library (gapic-* or proto-*).
dependencies in proto_library_with_info will be passed to the generator and appear in gapic-*
Note that if protoA imports protoB but only protoA is in the dependencies of proto_library_with_info, then protoA will appear in gapic-* but not protoB, this is the case of google/longrunning/operations.proto.
dependencies in java_gapic_assembly_gradle_pkg will go to proto-*. This is the case of shopping.


Rename original_id  and provisioning_policy fields

What this PR does / why we need it:
As per review of swagger files , the field name used to represent actual id of pool and volume can be represented with a different name other than 'original_id' . Similarly 'provisioning_policy' used in Volume model can me renamed. These fields are renamed as per below
Pool
original_id -> native_storage_pool_id
Volume
original_id -> native_volume_id
original_pool_id -> native_storage_pool_id
provisioning_policy -> type
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #153
Special notes for your reviewer:
In task manager/tasks  _classify_resources has been enhanced to accept key as input. earlier 'original_id' was hard coded
Test report:

Release note:

Instead of native_* (which creates more confusion with host native or device native), can we call it as device_*

Instead of native_* (which creates more confusion with host native or device native), can we call it as device_*

device_volume_id? like this?

Instead of native_* (which creates more confusion with host native or device native), can we call it as device_*

as discussed, even device_* will confuse user.. As of now could ot get a better name..

plz update ProvisionPolicy under constants.py

done

LGTM

@kumarashit please check

Codecov Report

Merging #213 into master will decrease coverage by 0.38%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #213      +/-   ##
==========================================
- Coverage   66.91%   66.53%   -0.39%
==========================================
  Files          65       65
  Lines        4316     4258      -58
  Branches      484      484
==========================================
- Hits         2888     2833      -55
+ Misses       1292     1289       -3
  Partials      136      136

Impacted Files
Coverage Δ

dolphin/api/v1/volumes.py
100.00% <ø> (ø)

dolphin/drivers/fake_storage/__init__.py
89.88% <ø> (-0.44%)
:arrow_down:

dolphin/api/v1/storage_pools.py
100.00% <100.00%> (ø)

dolphin/common/constants.py
100.00% <100.00%> (ø)

dolphin/db/sqlalchemy/api.py
78.34% <100.00%> (-0.27%)
:arrow_down:

dolphin/db/sqlalchemy/models.py
98.94% <100.00%> (ø)

dolphin/drivers/dell_emc/vmax/client.py
97.64% <100.00%> (ø)

dolphin/drivers/huawei/oceanstor/oceanstor.py
92.94% <100.00%> (ø)

dolphin/task_manager/tasks/task.py
86.25% <100.00%> (-0.51%)
:arrow_down:

dolphin/drivers/driver.py
65.00% <0.00%> (-9.08%)
:arrow_down:

... and 19 more


Issue: Using custom_id with PGVector store

Issue you'd like to raise.
Hi,
I have a pandas dataframe with a column name 'chunk_id'.
I want to use this chunk_id as the custom_id in the langchain_pg_embedding table.
The langchain documentation search bot tells me this is how I can do it.
from langchain.vectorstores import PGVectorStore

vector_store = PGVectorStore(
    table_name="documents",
    conn_str="postgresql://username:password@localhost:5432/database",
    custom_id="my_custom_id"
)

This doesn't seem right to me. For one, there is no PGVectorStore in langchain.vectorstores. Secondly the PGVector from from langchain.vectorstores.pgvector import PGVector does not accept the custom_id argument.
Is there any way to use my 'chunk_id' as the custom_id?
Suggestion:
No response

Thanks, this works with add_embeddings as well as add_texts

In case it helps anyone, this also works with add_documents(docs, ids=ids). The names key "ids" will be passed as kwargs all the way.


⚠ Bofrost.fr has degraded performance

In 78aa0f7, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 15035 ms

Resolved: Bofrost.fr performance has improved in e1f5662 after 6 minutes.


Alignment issue in Releases subnav

Test url: https://github.com/sindresorhus/refined-github/releases
DOM as it appears:

			Releases
			Tags

			Packages

				Sign up for the GitHub Package RegistryBeta

		Draft a new release

			Select
				tag

Apparently this is what it looks like without Refined GitHub. Awful too

This seems to be the fix, but I don't know what's causing the issue in the first place. PR welcome to locate the troubling CSS and placing this next to it.
.subnav > :first-child {
	flex-grow: 1
}

Just noticed this issue as well. I'll push a fix tonight.


settle on a terminology

E.g. what does highlighted marking and focused marking refer to as of now?

As of now:

editor: element in which the user writes in
settings: component in /settings that contains various functionality the user can interact with

What should we call the list of markings on the right hand side?
What should we call the off-canvas menu that shows up when the triple lines on the to-left are clicked?

highlight > focus
subsume > blur (other alternatives to subsume include, "recede", "relegate", "diminish")
?

Terms:

writing - text in editor for which a request to the server has been made


Add Settings app

The settings app has been added !!!

#53 #100 #302 #303
Type of change

[x] New feature (non-breaking change which adds functionality)

@blueedgetechno for now I set a max-width to settings app ig we can make it more responsive for smaller screens later.

Hey @yashash1511 test-on-pr / test-tauri will fail till after this is merged due to me adding the keyfiles. But don't worry I have manually checked it and it works.

@yashash1511 ig this should changed to blue

@Posandu I was thinking about adding features like user being able to set their own name. So we will switch directly to that .

@blueedgetechno I didn't remove container query polyfill as i think we have many uses for it.
for example in the calculator app we can have history pane automatically show after certain width just like real win11.

Merge it, 🎉


GPTMD databases from old versions cause crashes when searching

No error message is given if a mod in a database does not exist in the mod .txt files. This may be solved by defining mods within the GPTMD database XML file.
This crash is due to names of mods changing version to version.

Anthony added mod definitions to the xml. Maybe any there that aren't in the mod .txt files could be added. If same chem formula/mass/location then go with the xml version so they're properly read in?

Yes, mods are defined in the gptmd database file. If this is a cross-version issue, please close!


Update to sign service v2

@onovotny,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Not sure why the build is failing...it's unrelated to this. This PR should be merged anyway.

Changes Unknown when pulling a655f3c17f520cfa7c2c14e9c17344f3dec1c4d2 on signclient-v2 into ** on develop**.


Fixed case of WdfSpinLockRelease

Hi @ajbarb , thanks for the PR! Good catch on the spelling case. I'll merge this PR for you and it should be live later today.


Run Jest inside sub-folder

I'm getting this error when trying to watch jest:
command 'extension.jest.startJest' not found
So, after I installed the extension, nothing happens:

Jest is running, those white dots represent test that have not been ran yet ( because it only runs in watcher mode ) ( you can see the status in the blue bar at the bottom )
Now that Jest 16 is out, I can do my final polish pass for this extension 👍

right, but the dots never turn green/red.
I'm on<EMAIL_ADDRESS>Maybe that's the issue?

I'm unsure, I'm afraid you'd have to clone and run the project in dev mode to see the JSON being passed around to figure that one out

I am also unable to execute it from the command palette. However if I open the subdirectory for my client code it starts the watcher automatically and runs the tests when I change something.
My guess is that it doesn't work if your client is in a subdirectory, e.g. client/src/. Can you confirm @luisrudge?

The command itself does nothing ( I forgot to remove it ) Jest will always be running in a project that includes the jest module

I see, so the real "issue" is that it should also run when contained in a subdirectory in a monorepo?

Yeah 👍

I have none of those to use as an example ( in all of Artsy's codebases )

I was using and older version of this template: https://github.com/serverless/serverless-graphql it has all the frontend code in client/src/ instead of the root folder. But the plugin seems to work with the latest version of the template. 🙂

Rock 👍
might be just be broken when using an older version of Jest, I wanted to add something to ensure a minimum version of 17 at some point

here's the error I'm having with the new version
Exception raised: Process failed: spawn node_modules/.bin/jest ENOENT
Error Parsing :c:\git\oss\auth0-progressive-profiling\code\components\Card.spec.js. - TypeError: Cannot read property 'forEach' of undefined

Also getting Exception raised: Process failed: spawn node_modules/.bin/jest ENOENT
I'm using an external jest configuration if it helps.

@luisrudge  is that one windows? ( I wonder if I need to do something different on windows ) can you also check to see if node_modules/.bin/jest exists?
@luizbon where is your jest binary? I wanted to get around to making this configurable or be derived from the package.json

I'm on windows indeed. c:\git\oss\project\node_modules\.bin\jest exists

@orta I've checked and node_modules/.bin/jest is there, but I don't have any jest configuration inside the package.json since I'm using an external configuration file.

I have my config inside the package.json file

I still get command 'io.orta.jest.start' not found

even on 1.1.0? Even then, it should auto start and you can click on the status bar to see whats going on

I guess, since the command is not found, nothing works. I can't even see the status bar.

After the last update, still not working for me. :(

Then I'd recommend cloning the repo and taking a look at what's going on in debug mode - I'm out of ideas

Or making a sample project that exhibits that behaviour so I can take a look at it

I got a ReferenceError: document is not defined error, which may be what you're seeing - can you check with 1.3.2, think I got it.
As commands are added at runtime, if the extension crashes before they are registered, it would not show - which this crash would have done

command 'io.orta.jest.start' not found 😭

I am also getting a similar error where it throws the document is not defined.

Ok it's not just me.  I miss my green dots.

Also having that problem. Jest Debug Console says:

Exception raised: Process failed: spawn jest ENOENT

Took me a while, but I finally figured it out:
Final solution

Create new runJest.sh file (in workspace root)
In my case, it contains: cd relative/path/to/test/root && npm test # NOTE: path contains package.jsonand have atest script defined
In VSCode's settings.json, add: "jest.pathToJest": "sh runJest.sh"

(NOTE: This even works on Windows if you have Cygwin installed and properly configured)
Problem Solving Process

The official vscode-jest troubleshooting guide tells you to set your workspace's jest.pathToJest setting, however there is no documentation on how its supposed to work.
Looked at the source code and saw one special case returning npm test --, realizing it's actually ill-named: it's a command-line/shell command and not a path.

Turns out that jest from the error message (spawn jest ENOENT) refers to the value of pathToJest.

First I tried (in my sample project): "jest.pathToJest": "cd projects/todomvc/examples/vanilla-es6/ && npm test".

No dice. cd'ing won't work.
Also note that VS project variables/macros (such as ${workspaceFolder} won't be recognized.

Finally came up with final solution mentioned above.


Updated css for editable-popup to work better on phones

Fix editable-popoup css to work better on phone
Fix link css to only apply to links directly contained by the popover-wrapper
Closes #519 and #522

Hi @eugef, could you push out a new release?

@ckosloski sure


Added a few languages/compilers

New languages are MoonScript, Julia, new compilers are GNU Pascal, Mono,
LLVM llc, Dart VM

Thanks for the suggestions! I maintain the compilers list here and have added them to it.

Ahh, dang. Didn't know, I don't often(ever) do webdev stuff.
I know this might not be the place for it, but I feel like it could be cool to have various execution platforms included as entities in the graph, so that JVM is a thing of its own, as would be the Python VM and so on, since JIT isn't exactly compiling everything down to machine code(you'd expect things that compile to it to be native standalone executables), but well, that's just me complaining.

Yeah, I thought about that too. On the one hand, it would be nice to have everything in the graph compile to "Machine Code", but on the other hand it does feel a bit disingenuous. I'm thinking of maybe adding a "JIT Code" language to make this distinction. There's definitely a lot of cool ideas that can be implemented here.

What about having the final target be the "platform", and platforms simply being marked as native/JITed/VM?

Seems like that could work, I would have to play around with the idea to see if it fits as VM is the odd one out here (and also overlaps with JIT in some cases). Might be better if this was implemented as a different view with groupings.

Well, JIT is usually a VM/interpreter, just one that compiles some or all of the code to machine code on the go, it rarely produces standalone code.


Consider accepting url input from stdin

Thanks @MKaterbarg for this simple but very handy tool.
I am able to call the utility as prescribed and get expected results.
However, it would make things simpler, if it would follow CLI pattern of many tools such as gzip, bzip2, grep, wc, jq .... to allow passing the last textual content to process from stdin.
Then I could do things such as:
urlrecode -e https://google.com/a=14&b=44 > url.encoded
cat url.encoded | urlrecode -d

Some CLI tools are require to specify - to read stdin. On the other hand, many tools consider missing last argument as clear sign to read it from stdin.
Hint: If you would use click library, these things would be a breeze.
PS: I like the name urlrecode - very easy to remember.

@vlcinsky Thanks for the suggestion. It does indeed make sense to add this. Will work on it

@vlcinsky  Pushed 1.0.9 out just now. Works as I would expect locally. Let me know, otherwise I'll close this issue

@MKaterbarg well done.
I have tested it in my neovim and now I can easily decode the url as needed.
There is one small caveat (which is not critical).
If I search for something in google, e.g. for the term urlrecode, the links look like leading directly to the found page but in fact they are leading first to google (to track my click) and from there are redirecting to real url.
Roundtrip adds new line
When I decode a line of text in my neovim, it takes complete line incl. newline. For this reason when I decode an url and then encode it again, it adds extra %0A to the end.
value of url query parameter of the google redirect:
https%3A%2F%2Fpypi.org%2Fproject%2Furlrecode%2F1.0.2%2F

can be decoded into:
https://pypi.org/project/urlrecode/1.0.2/

and when encoded (in neovim) egain, I get:
https%3A//pypi.org/project/urlrecode/1.0.2/%0A

I am not sure, if the encoding result seem correct (original encoded and final encoded value differs) but in regards to extraneous %0A I would propose to strip blanks from the encoded value to prevent this.

Oh that's a good point. While that's not so bad on the decode, it does indeed lead to an issue on encode.


Create staging and intermediate models for MITxOnline CourseRun/ProgramRun Certificates + Grades

User Story
Create staging and intermediate models for user's CourseRun/ProgramRun certificates + grades from MITxOnline, so the data are available in a denormalized place
Description/Context

[ ] Identify tables needed to build staging and intermediate models for MITxOnline certificates and grades
[ ] plan for each model, including modifications to the field name, data types, etc.
[ ] open PR that implements the plan

courses_courseruncertificate

id
course_run_id
user_id
drop certificate_page_revision_id, uuid

courses_programcertificate

id
program_id
user_id
drop certificate_page_revision_id, uuid

courses_courserungrade

id
course_run_id
grade
user_id
passed

Not sure why you are dropping certificate_page_revision_id, uuid .

@Ferdi certificate_page_revision_id is the foreign key to wagtailcore_pagerevision, which is the table we mentioned in slack for the presentation. UUID is used to link the user's certificate https://rc.mitxonline.mit.edu/certificate/7d18e75a-dea8-432b-aab7-3c518f4668a8/. I thought we don't need it for now?

To be precise, both CourseRunCertificate and ProgramCertificate have a foreign key reference to wagtailcore_pagerevision, which is a table from CMS/Wagtail that doesn't exist in our staging model yet. That table is used here for tracking the content changes made to the specific course run certificates (e.g. add or remove signatories). I don't know the use case for that. Also if we need to bring certificate_page_revision_id to staging for some reason, then we would need to bring in wagtail data.
uuid is primarily used for linking a certificate (unique in URL), I can't think of a use case for that, but can keep it if necessary


[AzureFunctions] Documentation for override host.json settings via appsettings

cc @ggailey777 @craigshoemaker
Add documentation for overriding host.json settings via AppSettings: https://stackoverflow.com/questions/59949260/azure-functions-can-you-override-host-settings

@pragnagopa Thank you for the enhancement request. This has been assigned to the content team for evaluation.

Thanks @pragnagopa we're already tracking this work item internally. #please-close


Determine a method of download files using native Zig

Currently, ZVM uses a cURL binding which makes it platform exclusive. I'd like to find a native Zig solution so ZVM can be compiled with minimal effort on the end user's part.

This is referring to https://github.com/tristanisham/zvm/blob/909f4f3db936019184ac869e354dcdd1d9ee0e6a/install.sh, correct? In other words, you'd want a cross-platform tool which:
1 - Figures out the host's target
https://github.com/tristanisham/zvm/blob/909f4f3db936019184ac869e354dcdd1d9ee0e6a/install.sh#L7-L8
2 - Downloads the GitHub release for the host's target (https://github.com/tristanisham/zvm/releases/latest/download/$PLATFORM)
https://github.com/tristanisham/zvm/blob/909f4f3db936019184ac869e354dcdd1d9ee0e6a/install.sh#L26
3 - Extracts it afterwards
https://github.com/tristanisham/zvm/blob/909f4f3db936019184ac869e354dcdd1d9ee0e6a/install.sh#L27
Is that it? Apologies if I have misunderstood the intent here.

Zig now has a native http module in the standard library.


Assign initial requests for kube-apiserver based on minNodes

What this PR does / why we need it:
Assign initial requests for kube-apiserver based on minNodes.
Currently Gardener assigns initial requests based on maxNodes. If a cluster is created with minNodes = 1 and maxNodes = 100, then we would end up allocating large values for kube-apiserver deployment. This was fine when we did not have vertical autoscaling capabilities for kube-apsierver. However, with HVPA, we can assign lower values initially, and depend on HVPA to scale the deployment whenever required.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

Assign initial `requests` for kube-apiserver based on cluster autoscaler minNodes instead of maxNodes

cc @schrodit @OlegLoewen : we need to monitor our testmachinery cluster once this change is rolled out. We intentionally put maxNodes on a high value (because back then no hvpa was there and otherwise the api server / etcd was sized too small for our needs).

Currently the minAllowed is 400M and 300m for memory and cpu respectively, which is lower than what Gardener would set to the smallest cluster (800M, 800m).
IMO, this value should be fine so that in case, the usage drops after bootstrapping the cluster, kube-apiserver can still scale down.
WDYT?

IMO, this value should be fine so that in case, the usage drops after bootstrapping the cluster, kube-apiserver can still scale down.
Since most clusters are small and use way less than the minAllowed amount, wouldn't this be a great way to dynamically set the minAllowed? This would greatly improve utilization IMO.

I get that Gardener sets the value higher than the minAllowed (800M, 800m), but couldn't this be changed to a much lower value?

I get that Gardener sets the value higher than the minAllowed (800M, 800m), but couldn't this be changed to a much lower value?

dynamically set the minAllowed?

I agree that even lower minAllowed should be helpful. However, I am not sure about the ROI on dynamically setting it.
VPA recommendations are anyway based on usage, and minAllowed is a way to low-cap it. We can keep it as low as possible keeping in mind that random noise or usual apiserver's periodic maintenance tasks  don't result in scaling even for a smallest cluster.
According to my understanding, for dynamic minAllowed, we would need to gather some data about the base resource usage for different cluster sizes.
This kind of t-shirt sizing was done when we had introduced maxNodes based resource allocation.
Please let me know if you have any ideas too for how to set the minAllowed dynamically.

I like the idea @wyb1 but let's get there gradually with careful observation.

Sorry for commenting after the merge. But let's avoid making too many scaling related changes in one single gardener release. We already have #1968 and #1983. If things go south it would be hard to figure out which change caused it.
Please do not misunderstand. I agree that we need to make multiple changes to improve resource utilisation. But let's iterate over incremental releases rather than clubbing many changes into bigger releases.


test(repeat): integration tests

This is ready to merge if it looks good.

todo: add test for this use case


Question about formatting

I just had a small question on a design decision: why did you choose to write your own serialization rather than use an existing library like fmtlib, or simply vsnprintf? Was this to support lazy evaluation?
Thank you for all the work on the library - it looks great!

Thanks!

As you say, it is lazily evaluated, no formatting happens on the calling thread but on the background one. All the message-related information is passed on a single chunk of memory. The format string is passed as a pointer.

This a plain C logging library with C++ wrappers, that rules out fmtlib. It probably also predates fmtlib, at least fmtlib wasn't popular when this was written.


Use flag to report an OOG while charging basic storage fee

Description
This PR adds a flag to signal OOG while charging for basic storage. In that case storage cost will be 0. That is then used in conservation checks to special case the simple check.
I do not particularly like this solution and I'd be inclined not to check it in.
However I am curious about what others think and I know @lxfind wanted to see how this looked.
I am more inclined to review this story at a later point in time and maybe find a better way to reorganize that code/checks so they are closer to each other and/or better encapsulated.
I do not like that the flag is traveling too much and it is not clear to see the relationship. I think it would make the code more brittle.
Thoughts and comments welcome
Test Plan
Existing tests already check for this condition

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] protocol change
[ ] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[ ] necessitate either a data wipe or data migration

Release notes

let me add more context as it was suggested to me this is rather cryptic.
There are several OOG conditions that may lead to unexpected results when looking at transaction effects.
The most peculiar one is when we go OOG (or we are OOG) while charging for storage. The first step in that case (and in case we were not already OOG during execution) is to dump all effects (all touched objects) and charge only for gas (charges related to the gas coins). However we can fail that too in which case, even though we have "touched" the gas coin, we are not charging for it (no storage cost or rebate or non refundable fee). To add to that, if gas smashing took place, the storage cost may be 0 but rebate and non refundable will be not 0 because of deleted objects and refunds.
That situation messed up the simple conservations fee which were stated like the following invariants:
total_input_rebate == gas_summary.storage_rebate + gas_summary.non_refundable_storage_fee
where total_input_rebate is the total "value" of all objects in input (as in object.storage_rebate) and
gas_summary.storage_cost == total_output_rebate where total_output_rebate is the total "value" of all objects in output (as in object.storage_rebate). Now pause and think about this and it should sound correct.
However in that OOG situation that breaks and we disabled this check.
As of right now the check has been re-enabled under the if gas_summary.storage_cost == 0 condition https://github.com/MystenLabs/sui/blob/main/sui-execution/latest/sui-adapter/src/temporary_store.rs#L859-L883.
So if you stop there and think about it, that is also sound and now simple conservation checks are back.
@lxfind and I were talking about this and wondering if adding a flag (instead of the == 0 condition) would make things more obvious.
So this PR is an attempt to implement that.
And to gather feedback on whether that clarifies things or is more or less the same.

Once it's oog it stays oog. So I think it makes sense to put oog as a field inside GasCharger. What do you think?

Once it's oog it stays oog. So I think it makes sense to put oog as a field inside GasCharger. What do you think?

yeah I thought about it and liked it even less :)
though your statement is reasonable. I can try the route.
Also that is what I meant about better abstracting/encapsulating. Maybe there is a way to break up the code such that conservation is started from a better place, a place with more info/state of what is going on

this looks reasonable although I don't really understand the edge cases that are driving this. going to remove myself as a reviewer but please add me back if there are specific questions for me


Use up to Sprockets 3.0.0 RC1

Sprockets 3 already has an RC. This is just a bump to allow that version.

We can leave '>= 2' to sprockets version, so there is no need to bump version every time for now.


Add tests for serialization, and a Python script for integration testing

Codecov Report

Merging #38 into master will increase coverage by 2.43%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #38      +/-   ##
==========================================
+ Coverage   77.41%   79.84%   +2.43%
==========================================
  Files          22       22
  Lines        1014     1047      +33
  Branches       65       65
==========================================
+ Hits          785      836      +51
+ Misses        210      182      -28
- Partials       19       29      +10

Impacted Files
Coverage Δ

test/ecp2_BN254-tests.c
100% <100%> (ø)
:arrow_up:

test/ecp_BN254-tests.c
100% <100%> (ø)
:arrow_up:

src/amcl-extensions/ecp2_BN254.c
58.62% <0%> (+27.58%)
:arrow_up:

src/amcl-extensions/ecp_BN254.c
75% <0%> (+50%)
:arrow_up:

Continue to review full report at Codecov.

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

Related to #33
But, this only tests our serialization code, and incorporates the example programs for integration tests.
We still need to take some time and improve our tests, to hit corner cases and failure modes.


fix: Disable console logs for internal operation

Description
To determine if a JSObject function is sync or async, we run a functionDeterminer.isFunctionAsync check that actually runs the raw user function, this way we find out if a trigger was present or not. When running the raw user function internally, we should disable console logs to make sure users don't see those logs.
Fixes https://github.com/appsmithorg/appsmith/issues/19533
Type of change

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

How Has This Been Tested?

Manual
Jest
Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=9ff233d

/ok-to-test sha=9ff233d

/ok-to-test sha=d9496b9

/ok-to-test sha=527ea3b


Add Dart SDK to version info (#4986).

Adds a new SDK line to the flutter —version output.
Sample output:
[~/src/git/clones/flutter] (master) $ flutter --version
Flutter on channel master (from git@github.com:pq/flutter.git)
Framework revision ec0f880032 (2 hours ago); engine revision 607d379c23
Dart SDK 1.19.0-dev.5.0

/cc @Hixie @devoncarew

lgtm; using Platform.version makes sense

Using Platform.version:
[~/src/git/clones/flutter] (sdk_version) $ flutter --version
Flutter on channel sdk_version (from git@github.com:pq/flutter.git)
Framework revision e8223e25f0 (3 hours ago); engine revision 607d379c23
Dart version 1.19.0-dev.5.0 (Wed Aug 10 09:29:58 2016) on "macos_x64"

Urk - that version's long. Perhaps trim off anything after the first space?

Updated to new text and trimmed version.
[~/src/git/clones/flutter] (sdk_version) $ flutter --version
Flutter on channel sdk_version (from git@github.com:pq/flutter.git)
Framework revision 41d89d5f6e (3 hours ago); engine revision 607d379c23
Flutter tools using Dart version 1.19.0-dev.5.0

lgtm


Npc don't drop

At first: Enemydrops are active
Npc is standing in a Worldguardregion with only greeting farewell and pvp allow flag
When he is killing from a player, they don't drop they inventory. Inventory was set with /sentinel drops.
I use Sentinel Build 125
Citizens Build 1481
This server is running CraftBukkit version git-Spigot-23b6354-0481ae9 (MC: 1.12) (Implementing API version 1.12-R0.1-SNAPSHOT)
plugins they can manipulate it:
CompatNoCheatPlus last build from jenkins
Worldguard Build 1708
Thanks for helping, fixing and working

It may be dropped by a plugin or gamerule.
It's easy enough to workaround - just set the workaround drops config option to true!
https://github.com/mcmonkey4eva/Sentinel/blob/master/src/main/resources/config.yml#L46


Release 2.4.0

This is a draft of changelog for the 2.4.0 release.
Here you can find all related translations changes: 2.3.1...master.

⚠ Do not merge this pull request manually ⚠
You should approve this pull request instead. After approving, I will automatically update it (release date needs to be adjusted), merge, and tag a new release. You can read more about the process on forum.

Show release notes preview
2.4.0

Added support for new extensions:

clarkwinkelmann/flarum-ext-anonymous-posting
clarkwinkelmann/flarum-ext-who-read
datlechin/flarum-add-like-controls
swaggymacro/only-starter
tohsakarat/tags-filter

Updated translations for extensions:

flarum/tags

All changes: 2.3.1...2.4.0.

Success! Now you can announce new release on forum:
## Version [`2.4.0`](https://github.com/flarum-lang/hebrew/releases/tag/2.4.0)

**Added support for new extensions**:

* [`clarkwinkelmann/flarum-ext-anonymous-posting`](https://github.com/clarkwinkelmann/flarum-ext-anonymous-posting)
* [`clarkwinkelmann/flarum-ext-who-read`](https://github.com/clarkwinkelmann/flarum-ext-who-read)
* [`datlechin/flarum-add-like-controls`](https://github.com/datlechin/flarum-add-like-controls)
* [`swaggymacro/only-starter`](https://github.com/SwaggyMacro/OnlyStarter)
* [`tohsakarat/tags-filter`](https://github.com/tohsakrat/flarum-tags-filter)

**Updated translations for extensions**:

* [`flarum/tags`](https://github.com/flarum/tags)

All changes: [2.3.1...2.4.0](https://github.com/flarum-lang/hebrew/compare/2.3.1...2.4.0).

In order to update run these commands:

```console
composer update flarum-lang/hebrew
php flarum cache:clear
```


Do not want to use "https://cdn.ckeditor.com/4.5.11/full/ckeditor.js">

Hi,
I have tried with ckeditor.js file locally. But I got a "404" error for config.js and en.js.They are looking files in different places.
I have used the files in below order

ckEditor.js
2)Config.js
3)en.js
I am using the angular 5 application.I want to use files from locally.
Can you please suggest  me the way to use these files.

If you are working with angular CLI and don't want or can work with CDN try the following:

npm install ckeditor => install the latest ckeditor app into node_modules folder
add the following to your angular-cli.json apps section:

      "assets": [
        "assets",
        "favicon.ico",
        {
          "glob": "**/*",
          "input": "../node_modules/ckeditor/",
          "output": "assets/js/ckeditor/",
          "allowOutsideOutDir": true
        }
      ],

add the script reference to the index.html file

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Myckeditor</title>
  <base href="/">

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
  <script src="./assets/js/ckeditor/ckeditor.js"></script>
</head>
<body>
  <app-root></app-root>
</body>
</html>

don't copy any files into ./assets/js/ckeditor folder
have fun!

I am getting the below issue.
Refused to execute script from 'http://localhost:4200/assets/js/ckeditor/ckeditor.js' because its
MIME type ('text/html') is not executable, and strict MIME type checking is enabled.

Show your code from .angular-cli.json, index.html, app.module.ts and app.component.ts

@kzimny  Thanks :) Problem is with path. As i corrected the path in .angular-cli.json. It starts working .

@kzimny "allowOutsideOutDir": true
has been removed in angular 8, what should be used instead?
I am getting 404 error(GET http://localhost:4200/assets/js/ckeditor/ckeditor.js net::ERR_ABORTED 404 (Not Found))

how the same can be achieved in a webpack project and not an Angular project?

add the script reference to the index.html file

What if I don't want the js to load at the initial index.html loading, I want the js to load when the component is loaded.


Uncaught RangeError: Maximum call stack size exceeded in most recent dev branch

I created a repo that has a minimal code sample to reproduce the bug, with latest dev branch of inferno as of 01/01/2016 20:38 PST
https://github.com/andyrj/inferno-max-call-stack-exceeded-bug
just git clone that repo, and then you can run the app with npm start...  load up localhost:8080 in browser and it will dump out the error in chrome dev tools.  The whole tab gets borked and chrome dev tools will stop responding on my machine.
Ran into this while making my inferno-redux-starter-kit demo project.

Well, if I remove the parameter being passed to the onClick handler inside the map operation in src/components/filters.js , the error goes away.
I guess this isn't supported like it is in React?  example can be found: http://rackt.org/redux/docs/basics/UsageWithReact.html , down at components/TodoList.js in the redux docs.
I can write my components to not need this, but it would be nice to be able to pass parameters to functions on event handlers.

@andyrj flow you was thinking about? Not supported in Inferno, but maybe something @trueadm will suggest to add in the future.
Should we close this ticket then if this is a user error?

@andyrj Hi, the error you've got is expected, as you're calling the event rather than passing it around as a reference. I just tried this in React now and it also breaks, so I'm confused how it works for you? You can achieve what you want with bind.

please close this was an error on my side as trueadm said...  sorry for the erroneous issue


checkSSLCert: 2.47.0 -> 2.48.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/matteocorti/check_ssl_cert/releases.
meta.description for checkSSLCert is: "Nagios plugin to check the CA and validity of an X.509 certificate"
meta.homepage for checkSSLCert is: "https://github.com/matteocorti/check_ssl_cert"
meta.changelog for checkSSLCert is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 2.48.0 with grep in /nix/store/8xy1cwsynh56kr4vc3gycw5h5x638kfx-check_ssl_cert-2.48.0
found 2.48.0 in filename of file in /nix/store/8xy1cwsynh56kr4vc3gycw5h5x638kfx-check_ssl_cert-2.48.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
checkSSLCert

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/8xy1cwsynh56kr4vc3gycw5h5x638kfx-check_ssl_cert-2.48.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A checkSSLCert https://github.com/r-ryantm/nixpkgs/archive/164c6900f9930254a3dcbaf7547ad40417751128.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/8xy1cwsynh56kr4vc3gycw5h5x638kfx-check_ssl_cert-2.48.0
ls -la /nix/store/8xy1cwsynh56kr4vc3gycw5h5x638kfx-check_ssl_cert-2.48.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

checkSSLCert

Maintainer pings
cc @fabaff for testing.

Result of nixpkgs-review pr 193018 run on x86_64-linux 1

1 package built:

checkSSLCert

@ofborg eval


dropping --team requirement

General question: is there anywhere else where we have to annotate the resolvingRequest to fill in MembersType PRIVATE/PUBLIC and/or TEAM?


Build status badges aren't properly displayed

Claims master branch never built, and image for develop branch is not showing for me.

Looks like the master branch badge is fixed in https://github.com/microsoft/spatialaudio-unity/pull/9, but the develop badge isn't resolving due to the project the pipeline is hosted in being private

Thanks for that hint @keveleigh! Fixed now.

Thanks for that hint @keveleigh! Fixed now.


Fixed a typo and some proposed changes based on the dataflow UI

Proposed some changes under the "File name options" section. Also the screen shot needs to be changed

@svchandramohan : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


WordCounter/SameDiff reject .docx files generated by Google

this happens because the docx python package doesn't work on windows, but since we'll be running the app on a linux server this is not an issue


Parquet s3 urls not working when use_memory_table is set to false

s3 urls were not working when use_memory_table is set to false.
It was returning the following error:
Error: DataFusion error: Internal error: No suitable object store found for s3://roapitest/blogs_flattened.parquet. This was likely caused by a bug in DataFusion's code and we would welcome that you file an bug report in our issue tracker

So I went through the datafusion repo, did a little bit of debugging then I had found out that,
While using use_memory_table: false  it was using a function from datafusion called infer_schema which in turn uses object_store which is actually causing the error. object_store is a dashmap containing the schema info of path,s3,hdfs urls. Only localfile system urls are present in object_store. We have to manually configure s3 urls with bucket name using a function in SessionContext in RuntimeEnv called register_store.
I was able to use register_store and the required functionality to use s3 without loading into the memory seems to work, but in columnq there is global SessionContext and when tables in loaded for example in parquet file in columnq/src/table/parquet.rs has a local SessionContext.
//in columnq/src/columnq.rs
pub fn new_with_config(config: SessionConfig) -> Self {
        let dfctx = SessionContext::with_config(config);
        let bucket_name = "roapi-test";
        let region = std::env::var("AWS_REGION").unwrap();
        let endpoint = std::env::var("AWS_ENDPOINT_URL").unwrap();
        let secret_access_key = std::env::var("AWS_SECRET_ACCESS_KEY").unwrap();
        let access_key_id = std::env::var("AWS_ACCESS_KEY_ID").unwrap();
        let s3_builder = AmazonS3Builder::new()
            .with_access_key_id(access_key_id)
            .with_bucket_name(bucket_name)
            .with_endpoint(endpoint)
            .with_region(region)
            .with_secret_access_key(secret_access_key)
            .build()
            .map_err(|e| {
                println!("{:?}", e);
                ColumnQError::MissingOption
            })
            .unwrap();
        dfctx.runtime_env().object_store_registry.register_store(
            "s3",
            "roapi-test",
            Arc::new(s3_builder),
        );
        let schema_map = HashMap::<String, arrow::datatypes::SchemaRef>::new();
        Self {
            dfctx,
            schema_map,
            kv_catalog: HashMap::new(),
        }
    }

//in columnq/src/table/parquet.rs
pub async fn to_datafusion_table(t: &TableSource) -> Result<Arc<dyn TableProvider>, ColumnQError> {
    let opt = t
        .option
        .clone()
        .unwrap_or_else(|| TableLoadOption::parquet(TableOptionParquet::default()));
    let TableOptionParquet { use_memory_table } = opt.as_parquet()?;

    if *use_memory_table {
        to_mem_table(t).await
    } else {
        let table_url = ListingTableUrl::parse(t.get_uri_str())?;
        let options = ListingOptions::new(Arc::new(ParquetFormat::default()));

        let schemaref = match &t.schema {
            Some(s) => Arc::new(s.into()),
            None => {
                let ctx = SessionContext::new();

                let bucket_name = "roapi-test";
                let region = std::env::var("AWS_REGION").unwrap();
                let endpoint = std::env::var("AWS_ENDPOINT_URL").unwrap();
                let secret_access_key = std::env::var("AWS_SECRET_ACCESS_KEY").unwrap();
                let access_key_id = std::env::var("AWS_ACCESS_KEY_ID").unwrap();
                let s3_builder = AmazonS3Builder::new()
                    .with_access_key_id(access_key_id)
                    .with_bucket_name(bucket_name)
                    .with_endpoint(endpoint)
                    .with_region(region)
                    .with_secret_access_key(secret_access_key)
                    .build()
                    .map_err(|e| {
                        println!("{:?}", e);
                        ColumnQError::MissingOption
                    })?;
                ctx.runtime_env().object_store_registry.register_store(
                    "s3",
                    "roapi-test",
                    Arc::new(s3_builder),
                );
                let s = options.infer_schema(&ctx.state(), &table_url).await?;
                println!("6");
                s
            }
        };

        let table_config = ListingTableConfig::new(table_url)
            .with_listing_options(options)
            .with_schema(schemaref);
        Ok(Arc::new(ListingTable::try_new(table_config)?))
    }
}

if you can see I have to use register_store function twice into order make s3 urls to work only for parquet files. If want it to work for csv files, I have to use the function thrice. Which I think is not efficient.
Do you think is there a better way to do it like having a single global SessionContext?

While using use_memory_table: false it was using a function from datafusion called infer_schema which in turn uses object_store which is actually causing the error.

I also hit this problem today and agree, the root cause is
https://github.com/roapi/roapi/blob/c0bff9532175f3a98b4f9a7d2f22d7198f69c37f/columnq/src/table/parquet.rs#L35-L36
and
https://github.com/apache/arrow-datafusion/blob/97b3a4b37f54aaa52f8705db3e57b15ee98c24a7/datafusion/core/src/datasource/listing/table.rs#L229

We have to manually configure s3 urls with bucket name using a function in SessionContext in RuntimeEnv called register_store

Another option is to use a ObjectStoreProvider, which lazy evaluate the url. An example is used in datafusion-cli at https://github.com/apache/arrow-datafusion/blob/13.0.0/datafusion-cli/src/object_storage.rs#L49-L57.

I was able to use register_store and the required functionality to use s3 without loading into the memory seems to work,

nice 👍

Do you think is there a better way to do it like having a single global SessionContext?

I agree. That would be great if the global SessionContext is setup with ObjectStoreProvider during startup

Historically use_memory_table only works for local file because datafusion only supported local files. When we upgrade to the new datafusion versions, we didn't add the code to configure object store for remote stores like you mentioned. Please feel free to send PRs to complete the integration!

I understand roapi supports S3 before datafusion supports it.
@elliot14A are you working on global SessionContext? I am thinking to support native GCS for roapi, but it maybe better after global SessionContext.
If you are working on it, I could take a look at minio (emulate S3 in CI) in the meantime: https://github.com/roapi/roapi/issues/18

Create a new issue about my proposal: https://github.com/roapi/roapi/issues/240


C/C++ language support

Implement optimized styles for  C/C++ entities for the milestone backlog core :package: package language-c.

Include strings should be colored
directive punctuation characters should be colored
The pointer-access should be colored
Preprocressor sections should be colored

Implemented in the referenced commit. Merged in 7568bfbf68d1ea6ad06db8389f1f15756718e2b4.


Deepgram mute

Sorry it took us a while, but we found a general solution to this one. Check it out in: https://github.com/pipecat-ai/pipecat/pull/716. Hope this helps! (And thanks for the PR 🙌 )


the dropbox address for the processed data is no longer functional

please change to an address, thanks

actually, I have downloaded the processed data by the provided address.
But it is only 1.92 GB, and the X_train.hkl is broken when unzipped.
Could someone please check the processed data? Thanks a lot.

I just tried it and it seems to be working and the X_train seems to be fine.  Can you show what errors you're getting?

I have downloaded it again, everything is okay this time! thanks!
should i cancel my comment?

Okay cool!  No you can leave it, it's fine


I'm looking to upgrade my GPU.

Hello !!
I'm looking to upgrade my GPU. Which GPU would be good to get that supports CUDA 11.8 and bf16?
Thank you

RTX 4090 is available


Update monitoring.md

Adding Frequently Asked questions section for telemetry documentation.

Looks good - I know it's not completely general, but in the ingoing/outgoing question, would it make sense to show the lines from aragorn to say "if you're using x it looks like this." ?

Yep totally makes sense, adding that in.

It is easier to read the draft here:
https://github.com/NCATSTranslator/TranslatorTechnicalDocumentation/blob/telemetry-FAQ/docs/deployment-guide/monitoring.md
Note that the code block controls don't seem to be working as intended

It is easier to read the draft here: https://github.com/NCATSTranslator/TranslatorTechnicalDocumentation/blob/telemetry-FAQ/docs/deployment-guide/monitoring.md
Note that the code block controls don't seem to be working as intended

HTML in there was casting the markdown. i think its looking good now. Thanks for pointing that out @edeutsch.


nil pointer on c.BufferLength()

Describe the bug
In React callback:
...React(frame []byte, c gnet.Conn) (out []byte, action gnet.Action) {
fmt.Printf("buf len: %d\n", c.BufferLength())

To Reproduce
Steps to reproduce the behavior:
Send UDP packet.
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x8e7ccc]
(scrubbed stack):
github.com/panjf2000/gnet/ringbuffer.(*RingBuffer).Length(...)
github.com/panjf2000/gnet/ringbuffer/ring_buffer.go:260
github.com/panjf2000/gnet.(*conn).BufferLength(0xc00033e000, 0xc000010018)
github.com/panjf2000/gnet/connection_unix.go:220 +0xc

Expected behavior
The length of the Buffer, even if 0.
System Info (please complete the following information):

OS amazon linux
Go version (e.g. Go 1.13): 1.14.4
gnet version (e.g. v1.0.0): 1.3.2

Additional context
Add any other context about the problem here.

The buffer is not available when working with UDP, see https://gnet.host/blog/presenting-gnet/#udp

But still, maybe the doc could be a  little clearer, I will update the doc for this.

Even if it wasn’t available for UDP, causing a panic due to a nil is not a good api experience.  Returning an error or even just returning 0 would be more user friendly

Even if it wasn’t available for UDP, causing a panic due to a nil is not a good api experience. Returning an error or even just returning 0 would be more user friendly

Allowing users to call those invalid functions and get results from them can be misleading，confusing users of gnet, e.g., you get a 0 by calling the c.BufferLength() while the frame []byte contains real data. So I prefer to keep the current pattern to force users not call those functions under UDP.