text:
8.3 Error when running 'flask db migrate'

I got the following error when running 'flask db migrate -m "followers"'
NameError: name 'followers' is not defined
I removed the changes to the User class then ran the migration and it works fine so just seems to be an error in the order of operations.
BTW, thanks for the great update to the tutorial!

The error message alone does not give me enough context. Do you have the complete stack trace?

Traceback (most recent call last):   File "/Users/Shea/Sites/microblog/venv/bin/flask", line 11, in <module>     sys.exit(main())   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/flask/cli.py", line 513, in main     cli.main(args=args, prog_name=name)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/flask/cli.py", line 380, in main     return AppGroup.main(self, *args, **kwargs)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/core.py", line 697, in main     rv = self.invoke(ctx)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/core.py", line 1066, in invoke     return _process_result(sub_ctx.command.invoke(sub_ctx))   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/core.py", line 1066, in invoke     return _process_result(sub_ctx.command.invoke(sub_ctx))   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/core.py", line 895, in invoke     return ctx.invoke(self.callback, **ctx.params)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/core.py", line 535, in invoke     return callback(*args, **kwargs)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/click/decorators.py", line 17, in new_func     return f(get_current_context(), *args, **kwargs)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/flask/cli.py", line 256, in decorator     with __ctx.ensure_object(ScriptInfo).load_app().app_context():   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/flask/cli.py", line 237, in load_app     rv = locate_app(self.app_import_path)   File "/Users/Shea/Sites/microblog/venv/lib/python3.6/site-packages/flask/cli.py", line 90, in locate_app     __import__(module)   File "/Users/Shea/Sites/microblog/microblog.py", line 1, in <module>     from app import app, db   File "/Users/Shea/Sites/microblog/app/__init__.py", line 18, in <module>     from app import routes, models, errors   File "/Users/Shea/Sites/microblog/app/routes.py", line 3, in <module>     from app.forms import LoginForm, RegistrationForm, EditProfileForm   File "/Users/Shea/Sites/microblog/app/forms.py", line 4, in <module>     from app.models import User   File "/Users/Shea/Sites/microblog/app/models.py", line 11, in <module>     class User(UserMixin, db.Model):   File "/Users/Shea/Sites/microblog/app/models.py", line 20, in User     'User', secondary=followers, NameError: name 'followers' is not defined

You are probably missing this: https://github.com/miguelgrinberg/microblog/blob/c4da2aab712bc397c3c437df948505f54fa4329f/app/models.py#L8-L12.
Or maybe you have it, but you put it below line 20, where it is referenced.

Yes, I had that code below line 20. Thanks!

NameError: name 'followers' is not defined, pls help me!
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 2328, in call
return self.wsgi_app(environ, start_response)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 2314, in wsgi_app
response = self.handle_exception(e)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 1760, in handle_exception
reraise(exc_type, exc_value, tb)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/_compat.py", line 36, in reraise
raise value
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 2311, in wsgi_app
response = self.full_dispatch_request()
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 1834, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 1737, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/_compat.py", line 36, in reraise
raise value
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 1832, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/app.py", line 1818, in dispatch_request
return self.view_functionsrule.endpoint
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask_login/utils.py", line 261, in decorated_view
return func(*args, **kwargs)
File "/Users/b7ng/microblog/app/routes.py", line 82, in user
return render_template('user.html', user=user, posts=posts)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/templating.py", line 135, in render_template
context, ctx.app)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/flask/templating.py", line 117, in _render
rv = template.render(context)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/jinja2/asyncsupport.py", line 76, in render
return original_render(self, *args, **kwargs)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/jinja2/environment.py", line 1008, in render
Open an interactive python shell in this framereturn self.environment.handle_exception(exc_info, True)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/jinja2/environment.py", line 780, in handle_exception
reraise(exc_type, exc_value, tb)
File "/Users/b7ng/microblog/venv/lib/python3.7/site-packages/jinja2/_compat.py", line 37, in reraise
raise value.with_traceback(tb)
File "/Users/b7ng/microblog/app/templates/user.html", line 1, in top-level template code
{% extends "base.html" %}
File "/Users/b7ng/microblog/app/templates/base.html", line 30, in top-level template code
{% block content %}{% endblock %}
File "/Users/b7ng/microblog/app/templates/user.html", line 14, in block "content"
{% elif not current_user.is_following(user) %}
File "/Users/b7ng/microblog/app/models.py", line 55, in is_following
followers.c.followed_id == user.id).count() > 0

@bang98ptit did you add followers above line 55 in models.py, or below? Since it is referenced in line 55, it needs to be added above that line.

authors: bang98ptit miguelgrinberg sheadscott


text:
Support outputting raw ".dot" files with the DotCommand

I wanted to customize the output of Graphviz, and it becomes possible with this command

Coverage remained the same at 100.0% when pulling f5eb49ff596e135b9260b0152ebffdbc708f1019 on Pierstoval:dot into 4b4f8b34311a13e2f37fab53245d269cab746190 on mihaeu:master.

Thanks for the PR 👍
You know about --keep, but would like to have the option of not having any waste output, right?
Sort of like a shortcut for --keep --output=/dev/null, right?

Yep, that's what I did in the first place to do it myself, but it is a "hack" :)
This PR introduces a native way to do it, which I think is much more intuitive 😄

Alright, you got me convinced 😉
On Wed, Aug 7, 2019, 02:27 Alex Rock notifications@github.com wrote:

Yep, that's what I did in the first place to do it myself, but it is a
"hack" :)
This PR introduces a native way to do it, which I think is much more
intuitive 😄
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/mihaeu/dephpend/pull/54?email_source=notifications&email_token=AAQRO7JIJHHDV7E36M4DGYTQDJ2OZA5CNFSM4IJXIXQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3XPD7A#issuecomment-518975996,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAQRO7O3CJ3SZFEFUWF2CX3QDJ2OZANCNFSM4IJXIXQA
.

🎉 😊

source: gharchive/pull-request

authors: Pierstoval coveralls mihaeu

repo: mihaeu/dephpend

license: mit

license_type: permissive

license_source: bigquery


text:
Issues with rendering nested list items

Some funky things are going on with spacing of deeply nested list items, as mentioned in #37 and demonstrated in the tests on https://github.com/mikaelbr/marked-terminal/tree/nested-lists.
@mikaelbr I'm looking into it, and can see it has to do with chalk's ansi interacting with some regex-based checks, i.e. when adding bullets to list items.  Will tinker with it a bit more and either propose a fix or let you know what I've learned.

Did you do any progress on this, @devinivy?

I haven't for a little while, but believe it or not, it has been on my mind recently :)

Hehe, funny coincidence 😄 Let me know if you figure something out 👍

With master and #47 is it better?

source: gharchive/issue

authors: devinivy mikaelbr

repo: mikaelbr/marked-terminal

license: MIT

license_source: github-api


text:
net.connect is not a function

Don't simply delete it. I know there is already one issue about it, but that one is closed, and by problem is still there.
Win 8.1 and MacOS 10.14 both have this issue (for me)
with:

Node 10.11.0
Electron 4.0.1 (electron-packager)
Node-Notifier 5.4.0
I use Vue (with vue-cli 3) in my project

I typed:
notifier.notify({
    title: title,
    message: message,
    icon: require("@/assets/notifyicon.png"),
    sound: false
}, function (err, res) {
    if (err) {
        console.log(err)
    }
})

I built it, sadly, I got:
TypeError: net.connect is not a function
    at module.exports (checkGrowl.js?1c2d:12)
    at Growl.notify (growl.js?1ebe:67)

in growl.js, it is
checkGrowl(growly, function(_, didHaveGrowl) { //Line 67
    hasGrowl = didHaveGrowl;
    if (!didHaveGrowl) return callback(new Error(errorMessageNotFound));
    growly.notify(options.message, options);
    callback();
  });

in checkGrowl.js, it is (you may need to scroll to view it)
var net = require('net');

var hasGrowl = false;
module.exports = function(growlConfig, cb) {
  if (typeof cb === 'undefined') {
    cb = growlConfig;
    growlConfig = {};
  }
  if (hasGrowl) return cb(null, hasGrowl);
  var port = growlConfig.port || 23053;
  var host = growlConfig.host || 'localhost';
  var socket = net.connect(port, host); //Line 12
  socket.setTimeout(100);

  socket.on('connect', function() {
    socket.end();
    cb(null, true);
  });

  socket.on('error', function() {
    socket.end();
    cb(null, false);
  });
};

I once installed net as a dependency, it don't work.
Then I saw https://github.com/mikaelbr/node-notifier/issues/162 , but I still don't know what to do.
Everything mentioned in the Document is of no help.
Could anyone send a more detailed solution than https://github.com/mikaelbr/node-notifier/issues/162?
Thanks a lot!

don't need it now. thanks.

repo: mikaelbr/node-notifier


text:
Update SSL version to TLS 1.2

SSLv2/3 is now disabled in Debian/Ubuntu, so connections to the Deluge daemon fail with SSL errors.  Setting the connection to use the latest TLS version (which deluge supports fully) resolves the problem.
This is also a contender for the smallest pull request you'll ever see!

Hi Edmund,
Thank you for the contribution!

FYI: https://github.com/t3hk0d3/deluge-api

Hey t3, was there any specific reason why you would develop another lib rather than extend this one?

@mikaelwikman Sorry, no offence, but this one is more scratch than proper gem.

authors: edmund mikaelwikman t3hk0d3

repo: mikaelwikman/deluge-ruby


text:
"Could not find Toontown Rewritten" but the directory is set correctly

Hello Mike,
Love this project and hoping you can help me out. I see that you have updated the launch_ttr.py file recently to support 64bit. I also saw the last release for the project was in 2018 so I believe I am using an old version and that is why I am experiencing the issue.
I tried to build an exe file with PyInstaller but it just crashes. I also have tried to run the .py file through a command prompt but get a traceback on line 19 that says "ModuleNotFoundError: No module named 'requests' "

Maybe I have it all wrong and you don't need to release a new exe but please let me know if there is any way to get it working for me. I have some Python experience but I wasn't able to figure out how to get a working build on my PC with the updated py file.
My path for TTR is:
C:\Program Files (x86)\Toontown Rewritten
And I will attach a picture of my JSON file:

I don't think I am doing anything wrong here, but whenever I try to play with the existing exe I get the error "Could not find Toontown Rewritten. Restart launcher and set your TTR directory at the menu."

Thank you for taking a look!!

Hi there! Thanks for being interested in my project. To run the .py directly you’ll need to “pip install requests” to add that package to your computer. If it still gives you troubles I will make a new exe later today.
Source package: https://docs.python-requests.org/en/latest/user/install/#install

Hi there! Thanks for being interested in my project. To run the .py directly you’ll need to “pip install requests” to add that package to your computer. If it still gives you troubles I will make a new exe later today.
Source package: https://docs.python-requests.org/en/latest/user/install/#install

Hey there! Thanks for the quick response all is working fine after I ran "pip install requests". I am trying to use your simple launcher to make logins quicker when playing via Steam Link. Therefore, I need an exe to add to steam to tell it where the game starts.
I did work around this by creating a batch file, then converting the batch to an exe which works fine, but seems sloppy. How would you build an exe from the Python file? I am mainly just curious why it wasn't working when I tried to build it using pyinstaller. I am working to become a software developer someday so knowing how to do these things would be beneficial. If it is a lot to explain then no worries, I will figure it out eventually and at least I have the simple launcher working now!

I use the --onefile flag with pyinstaller so that it bundles everything into one .exe. Note that this often causes Windows Defender to freak out sometimes. There’s nothing malicious but sometimes the nature of the portable .exe makes Windows Defender nervous as a lot of Python written malware use pyinstaller. So you’ll probably be fighting with your antivirus exceptions for a bit if that happens, but once you have your exe you should be able to link it to Steam.
If I remember tonight, I’ll build a new exe and add to the releases. My next step with this project woo to be integrating patching of the game’s files rather than needing to run the official launcher to get game updates.

I use the --onefile flag with pyinstaller so that it bundles everything into one .exe. Note that this often causes Windows Defender to freak out sometimes. There’s nothing malicious but sometimes the nature of the portable .exe makes Windows Defender nervous as a lot of Python written malware use pyinstaller. So you’ll probably be fighting with your antivirus exceptions for a bit if that happens, but once you have your exe you should be able to link it to Steam.
If I remember tonight, I’ll build a new exe and add to the releases. My next step with this project will be integrating patching of the game’s files rather than needing to run the official launcher to get game updates.

I did use the --onefile flag but for some reason it would just instant crash whenever I ran the exe. I will have to give it another go. I can learn a lot from projects like this so I really appreciate you making it and sharing. Interested to see any future changes but love it so far!

That is strange that it is crashing - I can't replicate that behavior. I am using version 2.19.1 of the requests pip package. Newer versions trip up Windows Defender on my computer so I've stuck to using that one. Doing a "pip install -I requests==2.19.1" should force re-install to that version if you want to try that.


text:
"peak_start is not defined" error

Started getting this error for these inputs:
First Time: Yes
Previous Pattern: Unknown
Sunday: 100
Week Prices: 43, 38, 100, 84, 150

I am also getting this error. In my case it's when loading the page with URL parameters like this https://turnipprophet.io/index.html?prices=100.58.53.94.140.164.0.0.0.0.0.0.0

Almost certainly related to the refactor that was merged shortly before these reports.
Investigating...

It could be here:
https://github.com/mikebryant/ac-nh-turnip-prices/blob/8f4988224596830c5c4526765ebb40bdc214426c/js/predictions.js#L165-L182
The peak_start variable is used in an if statement without being declared for the function on line 176.

Well that's what happen when you partially revert a PR... :facepalm:
All my fault, I didn't check the intermediate commit that carefully.

Sorry about that!

authors: ChiefMilesEdgeworth RLesser joelft mikebryant peter50216 theRTC204

repo: mikebryant/ac-nh-turnip-prices


text:
Erroneous display of IP:s that can't be geolocated

IP:s that can't be geolocated (i.e. "null") displays as  [object Object]

]

@mikecao The latest version still has this error

authors: andlil sellertool

repo: mikecao/umami


text:
How do i authenticate with custom oauth scopes

I would previously used this
window.location.href = "https://github.com/login/oauth/authorize?scope=user:email,repo&client_id=<?= Main::$CLIENT_ID ?>";

But how would i do it in this library?

does this work for you?
https://github.com/mikedeboer/node-github#creating-a-token-for-your-application

Would that allow for a system where each user signs in with github then my site creates a profile for them? I only have experience with the /login/oauth/authorize endpoint because it doesnt require any credentials sent from my app and it returns a token for me to use.
I used the above method but it says i'm not authorized in console.

if you look for something that is running in the browser only, then node-github is not for you at this point, it only runs in the server I’m afraid

What? When a user clicks a button i want them to authenticate my app and return an auth token so can can create repos on their behalf. I'm asking because node-github doesn't contain the endpoint that i'm used to using for this task.

What endpoint is missing? POST /authorizations (https://developer.github.com/v3/oauth_authorizations/#create-a-new-authorization) is implemented as shonw at https://github.com/mikedeboer/node-github#creating-a-token-for-your-application

GET https://github.com/login/oauth/authorize

this is not part of the REST API (v3) that node-github implements. It is a URL that you redirect your app users to, they open this URL in their browser and will see a UI with information about your app and what scopes it requires.
There is a Non-Webaplication Flow https://developer.github.com/apps/building-integrations/setting-up-and-registering-oauth-apps/about-authorization-options-for-oauth-apps/#non-web-application-flow it’s basically what I linked above

repo: mikedeboer/node-github


text:
Added expression for XML (svg) detection

Simple addition to the code to accept XML strings as input.
This adds the option to generate PDF documents from a SVG (vector)

Hmm, can you give me a use case, where you would add a page or cover from a XML file?

We use it in a project which consists of an API server which generates parcel labels from a SVG source file.
In our case we have one or multiple SVG templates, depending on various conditions.
Based on the arguments passed by the user a SVG string is generated which represents the parcel label which is to be generated, this string is passed to the library and the PDF output is returned back to the user.

Ok, sounds reasonable. I just want to avoid having detectors for all kinds of text formats. This would be out of the scope of this project. But I'm fine with this.
Do you think you could also provide a test case for this? See here:
https://github.com/mikehaertl/phpwkhtmltopdf/blob/master/tests/PdfTest.php#L24
This test is not perfect, but at least it makes sure, that nothing breaks.

I will add a test case in the next few hours and update the PR.

Cool, you just have to push another commit, it will update the PR automatically.

Thanks!

repo: mikehaertl/phpwkhtmltopdf


text:
HTML replaced not reused

I have been trying to use your component with react and after a lot of messing around I was able to determine that this plugin does not use the orignal html rather duplicate it there for removing any events binded to it. Is there any work around for it

If you need to execute your own custom code when a tab is clicked, you can pass in option tabClickHandler when initializing the plugin. Details in the README here.

authors: Saqib-Shakil mikejacobson


text:
twitter_delete: allow inline env setting

Patch proposal:

Allows inline ENV setting for the variables if they aren't detected in the env. This shells out, but I guess it's not completely awful in this context.

Makes unfavouriting tweets require an option, instead of being the default. This one may be subjective - I feel a little stronger towards the content that I've favourited rather than the inane babble I tweet most of the time.

@DomT4 Sorry for the delay, turns out I wasn't watching this repo. I'm :+1: on the favouriting change but :-1: on the ENV one. Happy to merge if you can tweak that. Thanks!

Passing on this PR until conflicts resolved etc. :wink:

I may never recover from the shame of having one of my PRs closed due to inactivity ;). Will take another look at these soon!
Sent from my iPhone

On 25 Oct 2015, at 09:59, Mike McQuaid notifications@github.com wrote:
Passing on this PR until conflicts resolved etc.
—
Reply to this email directly or view it on GitHub.

Haha, no worries!

repo: mikemcquaid/TwitterDelete


text:
🛑 OMSF is down

In d238ae1, OMSF (https://www.omsf.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: OMSF is back up in eb38073 after 9 minutes.

repo: mikemhenry/website-uptime


text:
Major dependency upgrades

upgrade gradle to 8.2.1
upgrade all main dependencies to their latest version

    const val kotlin = "1.8.22"

    const val markdown = "0.4.1"

    const val coil = "2.4.0"
    const val compose = "1.4.3"
    const val composeCompiler = "1.4.8"

    const val androidCompileSdk = 34

expand supported architectures to more covered by markdown library
expand compose support to more architectures (note image loading won't be supported)
upgrade jvm and kotlin targets
update material and activity compose libs
update some ci action

Should fix: https://github.com/mikepenz/multiplatform-markdown-renderer/issues/61


text:
Error using "npx cds-dbm deploy"

I wanted to learn how to use PostgreSQL with SAP-CAP Services.
For this i read Blogs from Georg and Mike. Thanx for the great work you have done so far.
For diggin deeper i cloned the "pg-beershop" demo.
First i wanted to try with local PostgreSQL running in a local docker-instance.
When i there try to deploy the database-part i get an error.
So, the command: npx cds-cbm deploy results in an error as described in the following screenshot

kind regards
Matthias

Hi @mhay-at-dvelop
can you try to run it in a Unix environment like the Linux Subsystem for Windows? I've tried the current pg-beershop on my Mac and it works just fine. Will try to test on Windows tomorrow.
CU
Gregor

HI Gregor,
i now tried it with Linux Subsystem for Windows (Debian).
Here i also get an error. Looks similar.

and also look at the logfile:

authors: gregorwolf mhay-at-dvelop

repo: mikezaschka/cds-dbm


text:
launch on deno

ala https://github.com/dprint/automation/blob/main/tasks/publish_release.ts

link a submodule tasks as well

repo: mikhailusachev/peeva


text:
Stage 0 checklist – grading

Create a repository checklist

[x] the task provides required feedback and has been submitted (needs grading)
[x] the ability to clone the repository to the teacher's computer
[x] there is README.md formatted as expected
[x] README.md contains required information
[x] build succeeded
[x] all UTs are green

task passed

repo: mikolajzakrzewski/ConcurrentProgramming


text:
migration:create wants to make required ManyToOne fields nullable.

I noticed that migration:create for fields like this
@ManyToOne()
  product: Product;

always generates the following sql code:
modify `product_id` int(11) unsigned null; despite the obvious fact it should be not null.
I can solve this by adding { nullable: false }, but it looks like an workaround for the bug.

The same is for  @OneToOne

Fixed in 3.0.0-alpha.33

Not sure but this probably caused to always make ManyToOne not null (except litterally setting it in decorator args)
@ORM.ManyToOne(() => BlogCategory)
public mainCategory ? : BlogCategory;

gives
`main_category_id` int(11) unsigned not null

Making property non required (?) works for literal properties, but not for associations.

As written in the docs, this auto-detection works only when you omit the type/entity attribute and let ts-morph do the work for you. Added some examples there recently so it is clear.
https://mikro-orm.io/docs/defining-entities#optional-properties

On the other hand, the reason behind it was to allow skipping resource heavy source code analyses during the discovery process (by explicitly providing the types). Which can be now done via ReflectMetedataProvider (and it is also better as it does not force you to provide all the types), so I think we can actually keep TsMorphMetadataProvider doing the job always, even when the type is explicitly set.

Yeap. It is clear, I missed that.
I were using search but it seems to not work

Yeah I also noticed that the search works only for headings, and not for the actual content, will need to do something about it soon...

Hmm..
reflect-metadata - I wonder if it will not be a problem to use types with reflect metadata (because of cyclic dependencies).
I personally migrated to mikro-orm from sequelize-typescript. (BTW. I already love it)
It uses reflect-metadata (if field description is not specified in decorator)
And it is not possible to define complex (cyclic) associations using type only - it would lead to cyclic dependency problem - you have to use arrow func with return type.
Morph works because it parses source, but reflect-metadata loads script to memory which may lead to not imported modules (in cyclic cases).
Maybe you already solved that somehow?
I see you also use arrow declarations, but what about that case?
@ManyToOne()
favouriteBook?: Book; // correct: no `type` or `entity` provided, **will** be marked as `nullable`

Yeah it has some limitations, that is why I kept the ts-morph solution as the default. One of it being the need to explicitly provide the type/entity (not necessarily everywhere, but where the reflection fails, like with circular dependencies).
https://mikro-orm.io/docs/metadata-providers/#reflectmetadataprovider
This nullability detection works only with ts-morph, with other metadata providers you need to state that a property is nullable.
To wrap up, I can make this configurable (and enabled by default) so when using TsMorphMetadataProvider it will always check for nullability. I think it makes sense, it will make the API more predictable, and as I already said, the reason for this was to allow skipping ts-morph, for which one should use the ReflectMetadataProvider nowadays.

repo: mikro-orm/mikro-orm


text:
docs: filtering embedded values

Hi there!
I've been using Mikro ORM for quite a bit now and I'm really enjoying it so far. I only have one problem which is the following:
I have an entity (let's call it User) with an embedded property (let's call it UserData). The latter contains a field that can either hold a value or be null.
Now, I have to search through all the User entities to find the ones that have this specific field not set to null, which gives something like:
this.userRepository.find({ userData: { theNullableField: { $ne: null } } }) // Nest.js code, using an EntityRepository<User>

This compiles correctly but at runtime gives me the following error:
Using operators inside embeddables is not allowed, move the operator above.

So my question is: how can I make this search (without using the query builder of course)? I didn't find any workaround in the docs or in the issues that would help me with this, so I'd like to know how this can be done (what does move the operator above means? from what I understand operators can only be applied to the current value and not to sub-values, at least that's what's indicated in the docs).
I'm using MikroORM v5.0.5.
Thanks in advance for your help!

Sounds like the validation is too aggressive, it should disallow operators "in the middle" of the query, e.g. { prop: { $lt: { nested: 1 } }, which won't work for embeddables, as prop.nested is actually one property.
Can you provide more details like entity definition? Just tried this in the tests and I am not able to reproduce.

Here is a minimal reproduction code:
@Embeddable()
export class UserData {
  @Property()
  profileUri?: string
}

@Entity()
export class User {
  @Embedded()
  data!: UserData
}

@Injectable()
export class UserService {
  constructor(private readonly userRepo: EntityRepository<User>) {}

  async getUsersWithProfileUri(): Promise<User[]> {
    return this.userRepo.find({
      data: {
        $ne: null
      }
    })
  }
}

Unless you use ts-morph, this code is not valid, you need to specify the type in @Embedded decorator.
Also, you are using inline or object embeddables? What driver?

I am indeed using TS-Morph, without it this code would throw an error on startup with MikroORM saying it could not resolve the type of this field.
I'm using the PostgreSQL driver.
I suppose the embeddables are used in inline mode? Each property of the embeddable has its own dedicated column in the parent entity's database table. I can't really grasp the difference between inline and object from the docs, but the code I've pasted here is exactly how I embed the entities, there is no additional property provided to the decorators.

Ok that might be the difference, I was testing with object embeddable. FYI the difference is that inline mode means embedded properties will live separately on the owning entity, while object embeddable is a single JSON column. I guess we should make the docs clearer and add some examples.

Ok that might be the difference, I was testing with object embeddable. FYI the difference is that inline mode means embedded properties will live separately on the owning entity, while object embeddable is a single JSON column. I guess we should make the docs clearer and add some examples.

So how can I make use the operator in these conditions? What syntax should I use to perform the search?

I still can't reproduce this, it works fine on my end. Please provide executable reproduction, ideally as a test case
https://github.com/mikro-orm/mikro-orm/tree/master/tests/issues

I just tried on another computer, and it seems to work perfectly fine! I can't get why, I removed the node_modules to reinstall it (using a lockfile), removed the entire database etc. but it only works on one machine.
I'll dig a bit into that to see where that comes from.

If you use ts-morph, you also have metadata cache in temp, be sure to wipe that too. It should get invalidated automatically on entity changes tho.

If you use ts-morph, you also have metadata cache in temp, be sure to wipe that too. It should get invalidated automatically on entity changes tho.

Yes I already did that. I can't get why this only works on one computer and not the other, as they are using the same operating system, same environment, same configuration. Very weird. I'll try to see if I can find an explanation on my side.

Ok, will move this to discussions, this really sounds like your enviornment is somehow misconfigured.


text:
Update rhel.ks.j2 template for RHEL 8 and 9

Remove 'install' (Install OS instead of upgrade) The install Kickstart command is obsolete in RHEL 8, and removed in RHEL 9, causing an error during installation of AlmaLinux 9.

Remove 'auth  --useshadow  --enablemd5' (System authorization information) auth and authconfig Kickstart command are deprecated in RHEL 8. Passwords are shadowed by default (and use sha512)

Breaking changes : These changes are probably incompatible with RHEL 7 (untested).

Added link to official documentation

We can drop support for RHEL 7 anyway.
Could you rebase your PR on top of main?

repo: mila-iqia/ansible-role-cobbler


text:
Please clarify: Can I use Applite with my existing homebrews?

Q: Can I use Applite with my existing homebrews?
I like to try out Applite, but I don't like to reinstall all my Apps just to use Applite.
Also if I not like the Applite anymore, I would use homebrew as usual as before.
Also while installed Applite I still like to use the brew commands in Terminal

When first launching Applite or in the preferences, you can choose an already existing homebrew installation to use. All your currently installed casks will be recognized. Your brew installation won't be affected in any way that would prevent you from using it in the terminal.

Yes, it basically calls your selected brew executable. So for example if you want to install Firefox with Applite, it will call path/to/your/brew install --cask firefox.

this are good news, but it is not that clear.

You describe it better at homepage and website.

why then this path is used?

Where does the Homebrew installation go?
Applite has its own brew installation located at ~/Library/Application Support/Applite/homebrew

iFun

Here it is described that it creates a "shadow" homebrew and I need to reinstall the apps managed by homebrew:
https://www.ifun.de/applite-grafische-oberflaeche-fuer-die-installation-von-homebrew-apps-215639/

You are correct. The phrasing wasn't very clear, which could lead to confusion, so I updated the website advanced FAQ section. Do you find it more understandable?

yes - it is more clear :)
thanks

authors: milanvarady muescha

repo: milanvarady/Applite


text:
shutter / blind option on c

hello, i wanted to ask if there is any chance to see in the near future update to the tuyawebplatform for shutter / blind option ?
thank you

Thank you for expressing your interest in this, please see my responses in #18


text:
[Suggestion] Translate Reference - collection_schema.md into CN

Note: This repository is ONLY used to solve issues related to DOCS.
For other issues, please move to other repositories.

Is there anything that's missing or inappropriate in the docs? Please describe.
collection_schema.md in [Reference].
Describe your suggestion
Translate Reference - collection_schema.md into CN
Additional reference
Machine translation post editing (MTPE) is okay, but pure machine translation will not be accepted.
You should have a certain level of proficiency in both Chinese and English in order to take this issue.

Hey @LocoRichard are you looking for PRs that run the document through an EN to CN translation program or a rewrite from someone comfortable with CN?
If it's the former, could you assign this to me?

@kartikcho Thank you for your interest in contributing to Milvus. Currently, we want someone who can deal with CN translation more professionally. Therefore, translation using program is not what we are looking for now. But please stay tuned. We may update some more issues that suit you!

Hi @kartikcho , if you are still interested in contributing to us, there are some API- and doc-related issues in Milvus Go SDK repo. Check if there is any that you can work on in Milvus Go SDK Hacktoberfest issues.

Thanks, I'll take a look at them!

/assign @daniel-shuy

I've created a PR at #752. Disclaimer: Chinese is not my primary language (English is), but I am proficient enough to read and write in Chinese.

authors: LocoRichard daniel-shuy kartikcho

repo: milvus-io/milvus-docs


text:
[Suggestion] Remake insert.md by adding params, etc.

Add relevant details to user guide pages.

Close via #672


text:
GPU inference error using db_resne50_rotation

Bug description
Hello, guys I am getting the following error by running the snipped of code. I don't  get the same error if I use db_resnet50 instead of db_resnet50_rotation. Help please! I am using the version 0.5.1
Code snippet to reproduce the bug
from doctr.io import DocumentFile
from doctr.models import ocr_predictor
tic = time.time()
doc = DocumentFile.from_pdf("/content/file.pdf")
print(f"Number of pages: {len(doc)}")
predictor = ocr_predictor('db_resnet50_rotation','crnn_vgg16_bn',pretrained=True,assume_straight_pages=False).cuda()
result = predictor(doc)

Error traceback
RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same or input should be a MKLDNN tensor and weight is a dense tensor

Environment
!pip install python-doctr[torch]
!sudo apt-get install fonts-freefont-ttf -y
!pip3 install --no-build-isolation -U pypdfium2==1.0.0

Deep Learning backend
is_tf_available: False
is_torch_available: True

First, could you elaborate on "I don't get the same error if I use db_resnet50 instead of db_resnet50_rotation". What error do you get if you use that one?
Yes, please look below:

Thanks for that! The traceback gave the source of the problem away: the input tensor isn't being moved to the device of the model as it should.
I'll fix this shortly then :)
I'll let you know here when it's merged!

Hi @harindercnvrg should work now (on main) 👋

Hi
I'm getting a similar error using db_resne50_rotation with version 0.7.1a0.
it is working fine with db_resne50.
Error traceback
Traceback (most recent call last):
  File "ocr.py", line 42, in <module>
    result = model(image)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 28, in decorate_context
    return func(*args, **kwargs)
  File "/home/minouei/Documents/models/rvl/gits/doctr/doctr/models/predictor/pytorch.py", line 117, in forward
    crops, loc_preds = self._rectify_crops(crops, loc_preds)
  File "/home/minouei/Documents/models/rvl/gits/doctr/doctr/models/predictor/base.py", line 93, in _rectify_crops
    orientations = [self.crop_orientation_predictor(page_crops) for page_crops in crops]  # type: ignore[misc]
  File "/home/minouei/Documents/models/rvl/gits/doctr/doctr/models/predictor/base.py", line 93, in <listcomp>
    orientations = [self.crop_orientation_predictor(page_crops) for page_crops in crops]  # type: ignore[misc]
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 28, in decorate_context
    return func(*args, **kwargs)
  File "/home/minouei/Documents/models/rvl/gits/doctr/doctr/models/classification/predictor/pytorch.py", line 48, in forward
    predicted_batches = [self.model(batch).to(device=_device) for batch in processed_batches]
  File "/home/minouei/Documents/models/rvl/gits/doctr/doctr/models/classification/predictor/pytorch.py", line 48, in <listcomp>
    predicted_batches = [self.model(batch).to(device=_device) for batch in processed_batches]
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torchvision/models/mobilenetv3.py", line 179, in forward
    return self._forward_impl(x)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torchvision/models/mobilenetv3.py", line 169, in _forward_impl
    x = self.features(x)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/container.py", line 141, in forward
    input = module(input)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/container.py", line 141, in forward
    input = module(input)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 446, in forward
    return self._conv_forward(input, self.weight, self.bias)
  File "/home/minouei/miniconda3/envs/mmocr3/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 442, in _conv_forward
    return F.conv2d(input, weight, bias, self.stride,
RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same or input should be a MKLDNN tensor and weight is a dense tensor

authors: felixdittrich92 frgfm harindercnvrg minouei-kl

repo: mindee/doctr


text:
docs: Updated folder hierarchy of doc source

#851

@fg-mindee
2 changes:
added Imgur to dataset list index.rst
fixed notebooks by replacing with rst


text:
item duplication

set up the bench like so:

move 90 gold ingots into the source material. result: a gold block, and the 90 ingots are now in the craft output, so you get a free gold block.

For my reference 6146

authors: Bastrabun fluxionary


text:
The credentials::IAM implementation doesn't work for multiple regions

Our services need to interact with AWS in a way that we need to access AWS services across multiple regions from a pod running from a specific region.j
Even though the implementation accepts an endpoint param, the same param is used as IAM, STS and ECS role endpoint and if the endpoint isn't provided the IPs are hardcoded.
https://github.com/minio/minio-go/blob/master/pkg/credentials/iam_aws.go#L62
How do I use this implementation to create minio clients that can access services in other region/s?

Write your own credential provider https://github.com/minio/minio-go/blob/master/pkg/credentials/credentials.go#L51

repo: minio/minio-go


text:
移除小程序中引入的外部库干扰

小程序引入外部库，样式库如 WeUI，工具库如 echarts，wxParser 对现有代码质量评估标准影响大
可通过

过滤关键字（weui.wxss 等）
判断文件行数（比如是否超过 2000 行）
判断文件大小 （针对外部库经过代码压缩后写在一行的情况）

移除

已添加。
1、2
commit: https://github.com/miniprogram-analyzer/miniprogram-analyzer/commit/0f1ca6b738c14148370a7b2134aa25981237c4d4


text:
Update without notice screens

Story: https://mojdigital.teamwork.com/#/tasks/20353649

WRONG branch, I misclicked and used master instead of develop.
Correct branch: https://github.com/ministryofjustice/c100-application/pull/904


text:
IC-2141 Exclude "soft-deleted" nsi's

What does this pull request do?
As part of the integration with R&M, when finding a matching NSI Community-api must exclude "soft-deleted" NSI's.
What is the intent behind these changes?
This is to fix a rare situation after which duplicate NSIs are present in nDelius, which then need to be manually deleted from nDelius.
Any breaking changes?
None

Demo'd to R&M team and Matt

repo: ministryofjustice/community-api


text:
Fix for RuboCop violation

This is the failure:
https://travis-ci.org/ministryofjustice/fr-staffapp/builds/88100149
and this change fixes it.

Merged the change when the PR went green. But it was only via email that I found out that the build failed RuboCop's check.

:+1:  go when green

authors: colinbruce dotemacs

repo: ministryofjustice/fr-staffapp


text:
CAS-367 show rejection reason and is withdrawn in the HPT timeline view

This PR CAS-367 is to return:

Rejection reason
Rejection reason details
is withdrawn

For the last referral history system note of type rejection

This tickets is to add the details for the last rejection note is not altering the order or the notes. I updated the acceptance criteria to include that it will return all the all notes for the timeline history
I don't think the test is created to test the time line of the notes is only to make sure that is returning what expected in each status. But in this case we need to make sure that the rejection reason and details is added only to the last rejection note only, this why I included dates.


text:
Experimental fix to flaky 5xx errors

What does this pull request do?
Experimental fix to flaky 5xx errors
We had a series of flaky errors in SingleReferralEndpoints test class
Test sp user works for prime provider and has required contract group(Request) (request=AssignSentReferral) FAILED

java.lang.AssertionError: Range for response status value 500 INTERNAL_SERVER_ERROR expected:<SUCCESSFUL> but was:<SERVER_ERROR>
    at uk.gov.justice.digital.hmpps.hmppsinterventionsservice.integration.authorization.SingleReferralEndpoints.sp user works for prime provider and has required contract group(SingleReferralEndpoints.kt:167)

When logs were added, the errors reduced significantly (did not have any), hinting at async timing problems
Then I removed logging during tests and added build/test-results/test/binary/output.bin storing and the caught exception said:
> POST http://localhost:39473/sent-referral/24121550-20ff-421b-b39f-72a1abca1c77/assign

{"status":500,"error":"unexpected error","message":"Could not commit JPA transaction; ⏎
  nested exception is javax.persistence.RollbackException: Error while committing the transaction"}

which further pointed to async timing issues

Based on:

The documentation of exchange() says "Perform the exchange without a request body"
None of the expectBody calls were flaky, only the standalone expectStatus ones (in our test history)

Hypothesis: the test assertion is processed as soon as the response headers are read, then moves on, creating a race condition
Experimental solution: make all assertions depend on the full resolution of the response body, thus forcing the request to complete before moving on
(❓ Is there a better way?)
What is the intent behind these changes?
Fix flaky tests to reduce delays in continuous integration and deployment

Totally true, fixed in aa43203

Well ok, this failed immediately 😊

Not sure if this really needs the body assertion or my entire line of reasoning is faulty


text:
Update prometheus

What
Selectively bump prometheus export to 2.0.0 (as opposed to 2.0.1)
Ticket
VCD - Release of dependency and security patches (Sprint Wyvern)
Why
Breaking change Version 2.0.1 fails to start with NameError on PeriodicStats
How
Set Gemfile so use version 2.0.0

Confirmed metrics in dev again:

Moving up

authors: ivanELEC pking-moj

repo: ministryofjustice/laa-court-data-ui


text:
LASB-1972 Expand input fields for create endpoint on the EFORM STAGING endpoint

What
Link to story
Added the fields, USER_CREATED and XML_DOC, to the create endpoint.
Checklist
Before you ask people to review this PR:

[x] Tests should be passing: ./gradlew test
[x] Github should not be reporting conflicts; you should have recently run git rebase main.
[x] Avoid mixing whitespace changes with code changes in the same commit. These make diffs harder to read and conflicts more likely.
[x] You should have looked at the diff against main and ensured that nothing unexpected is included in your changes.
[x] You should have checked that the commit messages say why the change was made.

Once the below (749) PR has been merged, this  (745) PR should be updated to reuse the same annotations.
https://github.com/ministryofjustice/laa-maat-court-data-api/pull/749

authors: Kevin-Paxton stone-dj


text:
Decomission services on Heroku

https://docs.google.com/spreadsheets/d/1JtY3QiH7U6Hta78lbWqmFsrPyqkdwt_g/edit?dls=true#gid=1454810579

https://docs.google.com/spreadsheets/d/1JtY3QiH7U6Hta78lbWqmFsrPyqkdwt_g/edit?dls=true#gid=1454810579

I think we can start working on this story. This story is about the engagement with service teams to identify current status of each of these services.

Speak to each team
Document current status of project
Categories each product e.g. decommission, migrate to Cloud Platform etc
Create issues for each category for further action.

Started audit of accounts

The list has had a first pass. 33% of apps have been decommissioned. About 33% still require confirmation of status. The remainder are active. The active apps will be added to the pipeline of potential services to be added to Cloud Platform.

Review completed. Decommissioned about 48% of services. There is one live service to be migrated to Cloud Platform (discussing with Alex Nash), all the others are prototypes. We should explore migrating those to Cloud Platform using the GDS Prototype Kit.

authors: AntonyBishop SteveMarshall digitalronin


text:
Remove temp fix for getting main branch in pipeline now main is default branch

I'd previously had to add a manual checkout of main while we still had master as our default branch. Now we've switched over the temporary fix can be removed.

Closing in favour of #401

repo: ministryofjustice/opg-digideps


text:
Uml 1104 not all orgs will accept codes content

Purpose
Changed content on give organisation access page to warn users that not organisations will access a viewer code. Also content changes to show viewercode page.
Fixes UML-1104
Approach
Made content changes and updated translation files
Checklist

[x] I have performed a self-review of my own code
[ ] I have added relevant logging with appropriate levels to my code
[ ] I have updated documentation (Confluence/GitHub wiki/tech debt doc) where relevant
[ ] I have added tests to prove my work
[x] I have added welsh translation tags and updated translation files
[ ] The product team have tested these changes

Need to reopen this

authors: GemTay cooperaj

repo: ministryofjustice/opg-use-an-lpa


text:
Option to allow by regex matches

Added an option to allow (skip) words/phrases via a regex match. Also reorganized the readme.

Added to #25

repo: minivan/middleman-spellcheck


text:
Connect this driver to the "Behat\MinkExtension" project

Currently, there is no way to use this driver in the Behat, because there is no corresponding driver in the https://github.com/Behat/MinkExtension/tree/master/src/Behat/MinkExtension/ServiceContainer/Driver .
The driver key would be webdriver-classic instead of selenium2. The current Selenium2 driver could be used as a starting point.
@uuf6429 , please submit a PR to that repo.

@aik099 / @stof just one question, out of curiosity, why are the driver factories in the behat/mink-extension package, instead of each individual driver package?

I've just noticed a huge banner on top of https://github.com/Behat/MinkExtension that recommends using https://github.com/FriendsOfBehat/MinkExtension instead.
@stof , isn't there a way to have a single repo?

@stof

there is a single repo for the MinkExtension now: the FriendsOfBehat one

FriendsOfBehat/MinkExtension is a bit of a mess:

it lacks proper documentation/readme, referring to the old/to-be-archived one instead (even though it has its own doc dir)
it claims not take any updates/features/improvements, unless they are compatibility bugfixes
looking at the code, it could do with some updating, but the previous point makes that unlikely to happen

I'll open a PR nonetheless, but this situation, (on top of the lack of feedback in Behat PRs/issues), doesn't inspire much confidence in Behat/Mink TBH.
@aik099 I'm closing this issue since it doesn't have anything to do with webdriver-classic-driver anymore.

repo: minkphp/webdriver-classic-driver


text:
Fix underlying logic with adding presenters.

When adding presenters, the JavaScript library does not pass the unique ID, but the person's name to the server. The server then does a lookup using the name, returning the first result.
https://github.com/minnestar/sessionizer/blob/37a8eaa6903c965f80e06b8f73a9f8a2bef15a44/src/app/controllers/presentations_controller.rb#L11-L14
I don't know PostgreSQL's internals well; though I suspect it will return the lowest ID (i.e. oldest account) -- meaning people with duplicate accounts will probably "never accept the CoC".
Resolution
I don't want to yak-shave the Rails Asset Pipeline, so I'm linking to a CDN with a POJO autocomplete library.
This fixes an issue so at least the person selected does not break the application. Further discussion in #300 to address duplicate names.
refs #300
closes #304
closes #265
closes #264
refs #120
closes #261 (winning)

In general, I agree, we don't gain much from a CDN for the libs/resources we have. It does, however, lower management/maintenance surface area for the Rails Asset Pipeline (albeit requiring a network connection for development).
Given Rails 5.2 was EOL June 2022 and Ruby 2.7 was EOL March 2023, I think focusing on those then bringing the JS libs in-line with the current JS/Rails model is where we might want to spend some effort.

@experimatt I will change the referenced library to include the SRI hash, which may be enough to securely pin in while we address the larger discussion.

@experimatt Good to go.

repo: minnestar/sessionizer


text:
🛑 Matrix is down

In 347b9db, Matrix (https://matrix.mint.lgbt:8448/_matrix/federation/v1/version) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Matrix is back up in 64364eb after 7 minutes.

repo: mint-lgbt/status


text:
🛑 Matrix is down

In 386d46b, Matrix (https://matrix.mint.lgbt:8448/_matrix/federation/v1/version) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Matrix is back up in 4f90c8a after 7 minutes.


text:
Feat/media

Added uploading an image functionality

The backend code is already deployed in master so feel free to merge if @horacioh reviews and its ok

@horacioh could you review this PR please?

authors: IsKEK juligasa

repo: mintterteam/mintter


text:
Feature request: improve usage documentation for cvSection

I would like to be able to produce a resume without highlighting the first 3 letters of the section. After looking through the code, it seems like it's possible to do this by passing in a false value into the cvSection function (included below for reference). It would be nice to have some documentation which clarifies some of the ways this template can be customized.
If this seems like a reasonable request, I would probably be able to submit a pull request for this.
#let cvSection(title, highlighted: true, letters: 3) = {
  let highlightText = title.slice(0, letters)
  let normalText = title.slice(letters)

  v(beforeSectionSkip)
  if nonLatinOverwrite {
    sectionTitleStyle(title, color: accentColor)
  } else {
    if highlighted {
      sectionTitleStyle(highlightText, color: accentColor)
      sectionTitleStyle(normalText, color: black)
    } else {
      sectionTitleStyle(title, color: black)
    }
  }
  h(2pt)
  box(width: 1fr, line(stroke: 0.9pt, length: 100%))
}

Hi @avi-cenna thanks for this advice! It's absolutely legitimate and valuable.
Indeed I am also thinking about making a small documentation for the project, perhaps using the  package to generate a small PDF included in the repository.
Are you interested in working together for this one?

Hello @mintyfrankie , yeah that sounds good to me! I didn't know about the Tidy package, but I think that would be helpful by converting documentation comments into readable API documentation.

Hi @avi-cenna, I plan now to cover this issue within the new v2 version, that will be complied also to the Typst package standards. A better documentation is on the roadmap. Please stay in touch!

authors: avi-cenna mintyfrankie

repo: mintyfrankie/brilliant-CV


text:
GDPR: bug when sending the data deletion request

Following MINUTIS-504
It seems that the audience is wrongly choosen when sending the data deletion request.
In the above example:

deleted volunter is tied to "UNITE LOCALE DE BAGNEUX"
peep who triggered him is tied to "UNITE LOCALE DE BAGNEUX" et "DT DES HAUTS-DE-SEINE"
it seems that someone from "UNITE LOCALE DE SURESNES" received the email as well

As "suresnes" is below "DT des hauts de seine" there should be an issue around that.

done in #499

done in #499

repo: minutis-redcall/app


text:
conf: Update kernel version to v4.19.231-cip68

Update kernel version from v4.19.229-cip67 to v4.19.231-cip68
Signed-off-by: Alice Ferrazzi alice.ferrazzi@miraclelinux.com

@aliceinwire thanks

repo: miraclelinux/meta-emlinux


text:
Implement Object#synchronized

In Java,
void onlyMe(Foo f) {
    synchronized(f) {
        doSomething();
    }
}

is possible. However, a Mirah equivalent
def onlyMe(f:Foo)
	f.synchronized do
		doSomething
	end
end

is currently not possible, while it should be.

why do not use same java syntax:
def onlyMe(f:Foo)
    synchronized(f) do
        doSomething
    end
end

I prefer the f.synchronized syntax myself. Since we're synchronizing on a lock contained by the f object, I feel like the method syntax better reflects that we're using the object's members to perform the action.

authors: baroquebobcat felixvf uujava

repo: mirah/mirah


text:
Modify order return page to show quantityToFulfill

I want to merge this change because order return page used to show (for unfulfilled items) quantity - quantity fulfilled. It should utilize new backend order line property - quantityToFulfill instead.

PR intended to be tested with API branch:
Screenshots

Pull Request Checklist

[ ] This code contains UI changes
[ ] All visible strings are translated with proper context including data-formatting
[ ] Attributes [data-test-id] are added for new elements
[ ] Changes are mentioned in the changelog
[ ] The changes are tested in different browsers and in light/dark mode

Test environment config

API_URI=https://master.staging.saleor.cloud/graphql/

Task linked: SALEOR-4305 "waiting" fulfillments are incorrectly handled on return page

repo: mirumee/saleor-dashboard


text:
Shipping price by weight or size

First I contributed to this issue that has already been closed, but probably nobody noticed as the issue is closed.
Could someone give me a hint what is the best and cleanest way to implement shipping price calculation by weight?
I get better in understanding the code, but nevertheless it’s cumbersome without explanation.
You need a place where you set the shipping price and you can get hold of the items ordered.
Maybe when a DeliveryGroup is created in core.utils.random_data.create_delivery_group(order)? Or in checkout.core.Checkout.deliveries(self)?
Any help would be appreciated.

Hello @MacLake
First of all - all code that lives in core.utils.random_data is only used to generate fake data (it's used by ./manage.py populatedb command.
To achieve price by weight, you should take a look on the code that creates order: https://github.com/mirumee/saleor/blob/master/saleor/checkout/core.py#L288  and wire it with shipping methods https://github.com/mirumee/saleor/blob/master/saleor/shipping/models.py#L98
I think it would be the easiest way to do it.

Hello @artursmet ,
Thanks a lot. I’ll try it this way and tell if it worked out.

Hi @MacLake  I'm also interest in the shipping by weight. I plan to get started at the end of the month but if you could share any information about your progress I'd be glad to hear in order to not duplicate the functionality or even support your development on the matter.

Hi  @curaloucura, I've solved the problem. I’ll give you some detailed instructions tomorrow. Actually it’s quite easy once you’ve understood the code, but that takes some time.

Okay, here are the instructions as promised: First of all, as a physicist I should use the correct term mass instead of weight.

[ ] Add mass fields to Product and ProductVariant in saleor/saleor/product/models.py:
In class Product(models.Model, ItemRange, index.Indexed):
mass = models.FloatField(null=True, verbose_name=pgettext_lazy('Product field', 'mass in kg'))
In class ProductVariant(models.Model, Item):

mass_override = models.FloatField(null=True, verbose_name=pgettext_lazy('Product variant field', 'mass in kg'))

    @property
    def mass(self):
        return self.mass_override or self.product.mass or 0

Add the fields the dashboard templates e. g. under the  price fields:
saleor/templates/dashboard/product/product_form.html:

                  {{ product_form.mass|materializecss }}

saleor/templates/dashboard/product/variant_form.html:

                  {{ form.mass_override|materializecss }}

In saleor/saleor/checkout/core.py the shipping price is calculated in two places. The cart is split in partitions, afik in products that require shipping and those that don’t. A partition contains the ordered products with their masses that we need. In the standard implementation you need a ShippingMethodCountry object for every country except the ones that count as "rest of the world", which is cumbersome. It’s easier to pass along the shipping address to the shipping price calculation: Add the parameters partition, self.shipping_address to self.shipping_method.get_total() in Checkout.deliveries(self):
	shipping_cost = self.shipping_method.get_total(partition, self.shipping_address)

and Checkout.create_order(self):
	shipping_price = self.shipping_method.get_total(partition, self.shipping_address)

self.get_total() calls self.deliveries(), which should do the correct calculation
In saleor/saleor/shipping/models.py we can now calculate the shipping price in class ShippingMethodCountry(models.Model) according to the partition and the shipping address. It’s more flexible to pass the whole address instead of just the country, so you can differentiate the cost within a country. This is not unrealistic,  e. g. shipping costs to some German islands in the North Sea or Baltic Sea can be higher. Here is an example for the shipping cost calculation, just as a proof of concept. You might either hard code the calculation or read a config file or use foreign key objects pointing to ShippingMethodCountry, but then you need to show them somehow in the Dashboard or activate the standard Django admin.
    def get_total(self, partition=None, shipping_address=None):
        """Calculate shipping price by mass and shipping address if partition is available"""
        if partition:
            # TODO: correct calulation, maybe with data from config file or with foreign key objects
            # We ignore self.country_code and use shipping_address.country instead. We also ignore self.price:
            eu = ['AT', 'BE', 'BG', 'CY', 'CZ', 'DK', 'DE', 'EE', 'ES', 'FI', 'FR', 'GB', 'GR', 'HR', 'HU',
                        'IE', 'IT', 'LT', 'LU', 'LV', 'MT', 'NL', 'PL', 'PT', 'RO', 'SE', 'SI', 'SK']
            import datetime, pytz
            utc = pytz.timezone('UTC')
            t_brexit = datetime.datetime(2019, 4, 1, 0, 0, 0, tzinfo=pytz.utc) # or whatever
            if utc.localize(datetime.datetime.utcnow()) >= t_brexit:
                eu.remove('GB')

            cc = shipping_address.country

            # Determine the total mass of the partition:
            mass = 0
            for cart_line in partition:
                mass += cart_line.quantity * cart_line.variant.mass
            # Just an example: 1 €/kg for Germany, 1.5 €/kg for the rest of the EU and 2 €/kg for other countries:
            if cc == 'DE':
                shipping_price = Price(mass, currency=settings.DEFAULT_CURRENCY)
            elif cc in eu:
                shipping_price = Price(1.5 * mass, currency=settings.DEFAULT_CURRENCY)
            else:
                shipping_price = Price(2 * mass, currency=settings.DEFAULT_CURRENCY)
            return shipping_price
        # Standard behaviour just in case in order not to break things
        else:
            return self.price

Note that the stardard shipping price ShippingMethodCountry.price and in this example also ShippingMethodCountry.country_code are completely ignored. This might be confusing, but I wanted to change as few code as possible and not break existing functionality.
Finally hide the shipping cost in the cart, because they are not calculated when saleor/templates/cart/_subtotal_table.html is shown:

              {% if default_country_options %}
                {# hide fixed standard shipping price {% price_range default_country_options %} #}
              {% endif %}
              {% trans "+ shipping" %}

To the maintainers of Saleor: Is there any other way I can contribute in this matter? Should I do a fork? We should somehow put this information into the documentation.

Thanks @MacLake I was woundering how to this right now heheheh, thanks again!

@MacLake  just saw the t_brexit in the calculation, so sad but so funny.

Shipping price by weight was introduced in #2529
For shipping price by size, we will keep #2029 issue as it contains more details

authors: MacLake Pacu2 artursmet curaloucura rlimaeco

repo: mirumee/saleor


text:
FileNotFoundError on Dashboard when deployed on Heroku

(Please take the time and describe the problem you're having before you propose a solution.)
What I'm trying to achieve
I wish to deploy my Saleor store on Heroku and load data from a DB dump with python manage.py loaddata db.json and that it works fine showing the products and the associated images.
Steps to reproduce the problem

Deploy to Heroku with Git on the command line
Load data from a database dump
View store but it shows placeholder images

What I expected to happen

Deploy to Heroku with Git on the command line
Load data from a database dump
View store showing product catalog with the right images

What happened instead/how it failed

After loading database dump, images do not show despite python manage.py collectstatic shows that the images are there but they are probably not being referenced right.

When I attempt to edit the products to change images on the dashboard, I get the following error:

The settings for the STATIC and Whitenoise look as follows:
STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    ('assets', os.path.join(PROJECT_ROOT, 'saleor', 'static', 'assets')),
    ('images', os.path.join(PROJECT_ROOT, 'saleor', 'static', 'images')),
    ('dashboard', os.path.join(PROJECT_ROOT, 'saleor', 'static', 'dashboard'))]
STATICFILES_FINDERS = [
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder']

MIDDLEWARE = [
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    'django_babel.middleware.LocaleMiddleware',
    'saleor.core.middleware.discounts',
    'saleor.core.middleware.google_analytics',
    'saleor.core.middleware.country',
    'saleor.core.middleware.currency',
    'saleor.core.middleware.site',
    'whitenoise.middleware.WhiteNoiseMiddleware',
    'social_django.middleware.SocialAuthExceptionMiddleware',
    'impersonate.middleware.ImpersonateMiddleware']

INSTALLED_APPS = [
    # External apps that need to go before django's
    'storages',

    # Django modules
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.sitemaps',
    'django.contrib.sites',
    'django.contrib.staticfiles',
    'django.contrib.auth',
    'django.contrib.postgres',
    'django.forms',

    # Local apps
    'saleor.account',
    'saleor.discount',
    'saleor.product',
    'saleor.cart',
    'saleor.checkout',
    'saleor.core',
    'saleor.graphql',
    'saleor.order.OrderAppConfig',
    'saleor.dashboard',
    'saleor.shipping',
    'saleor.search',
    'saleor.site',
    'saleor.data_feeds',

    # External apps
    'versatileimagefield',
    'django_babel',
    'bootstrap4',
    'django_fsm',
    'django_prices',
    'django_prices_openexchangerates',
    'graphene_django',
    'mptt',
    'payments',
    'webpack_loader',
    'social_django',
    'django_countries',
    'django_filters',
    'django_celery_results',
    'impersonate',
    'phonenumber_field']

Is there something I am missing? A WhiteNoise setting? Wrong way to load static files to Heroku due to differences between STATIC settings in Saleor and those in Whitenoise? What might I be doing wrong? Please help.

As far as I remember Whitenoise is not suitable for serving media files. For security and performance reasons, it scans files only at the startup, can’t really serve user-generated content.
However Saleor works out of the box with AWS S3, we have integration guide for It which I’d strongly recommend to pair with Heroku App.

Saleor does work with S3 but requires to disable the image creation on demand from versatile otherwise it's slow and will spam requests to S3 (which means it may cost you a few bucks).
I'm not quite sure, if someone could verify that... But I think versatile does not upload to the S3 media bucket at least Saleor does not upload to the S3 bucket when we disable the on demand creation and upload images from the dashboard.
Which means Versatile requires a manual warm up which is easily implementable from Saleor side.
Please tell me if I'm wrong. At least if was the issues I ran into with S3 on the January release of Saleor. Then I did some changes to the Saleor code to warm up on image upload which uploads to S3, everything is awesome now.

@NyanKiyoshi
You’re right, there’s no prewarmer for Versatileimagefield in Saleor, so disabling on demand image creation will stop thumbnails/crops from being created.
I think images should be created on demand only if ‘not DEBUG’.
We should address this problem soon.

Thanks guys! @NyanKiyoshi I am going to try and copy the folder to Heroku. Fingers crossed I can actually do that.. I do not have much experience with S3 so I will have to invest more time to learn about how to get that working, especially with the Versatile Images. Is this the only way people are handling images in their Saleor apps?

@Pacu2 do you have a link to the detailed integration guide for AWS? The documentation only has this:
Set the following environment variables to use S3 to store and serve media files:

`AWS_ACCESS_KEY_ID`
Your AWS access key.
`AWS_SECRET_ACCESS_KEY`
Your AWS secret access key.
`AWS_MEDIA_BUCKET_NAME`
The S3 bucket name to use for media files.
By default static files (such as CSS and JS files required to display your pages) will be served by the application server.

If you intend to use S3 for your static files as well, set an additional environment variable:

`AWS_STORAGE_BUCKET_NAME`
The S3 bucket name to use for static files.

@raybesiga That's the one I was talking about, Saleor wise, that's all you need.
Apart from that, you'll need to sign up and create buckets on AWS S3

Thanks @Pacu2. Do I then move the stuff in my media folder into the bucket? Also, that said, I cannot edit/delete the products due to the error I am having. Do you suggest that I delete the Heroku app and wipe my database? What do you recommend I do to get things working again?

How do I link the product images in a bucket to the actual products in the Saleor backend dashboard?

Copy your media files to s3 bucket, add appropriate settings in Saleor. Apart from that, remember about setting proper CORS policy on the buckets and permissions.
Answering second question, your files should have same structure as on your local instance.
If you want to move your static files to AWS S3 as well, you'll need STATIC_URL env variable set, equal to your bucket's url, take a look at https://github.com/mirumee/saleor/blob/master/webpack.config.js#L13-L18

I think this is already resolved

authors: NyanKiyoshi Pacu2 raybesiga


text:
Fix bulk actions

I want to merge this change because...
At this moment bulk actions are not working - user can select multiple items, but cannot do anything with them. This PR fixes this bug.
Pull Request Checklist

[x] Privileged views and APIs are guarded by proper permission checks.
[x] All visible strings are translated with proper context.
[x] All data-formatting is locale-aware (dates, numbers, and so on).
[x] Database queries are optimized and the number of queries is constant.
[x] The changes are tested.
[x] The code is documented (docstrings, project documentation).
[x] Python code quality checks pass: pycodestyle, pydocstyle, pylint.
[x] JavaScript code quality checks pass: eslint.

Codecov Report

Merging #1391 into master will increase coverage by 0.16%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1391      +/-   ##
==========================================
+ Coverage   82.26%   82.43%   +0.16%
==========================================
  Files         123      123
  Lines        5746     5795      +49
  Branches      667      708      +41
==========================================
+ Hits         4727     4777      +50
+ Misses        863      861       -2
- Partials      156      157       +1

Impacted Files
Coverage Δ

saleor/product/utils.py
88.88% <0%> (+2.91%)
: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 d1840cb...cada20c. Read the comment docs.

authors: codecov-io dominik-zeglen


text:
Update snapshots

I want to merge this change because it fixes frontend tests.
Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Database queries are optimized and the number of queries is constant.
[ ] Database migration files are up to date.
[ ] The changes are tested.
[ ] The code is documented (docstrings, project documentation).
[ ] GraphQL schema and type definitions are up to date.
[ ] Changes are mentioned in the changelog.

Here is the report for 7e1e1e1e48b21e72df424dae2ce70886e61dee2e (mirumee/saleor @ update-snaphots)
Missing base report (87cedb45f93d6a237c7d73d7e624f54539ad7c46). The results couldn't be compared.
No differences were found. (click me)

# api.benchmark checkout
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  add billing address to checkout     	         41	         41	             24
  add shipping to checkout            	          7	          7	              0
  checkout payment charge             	         16	         16	              0
  complete checkout                   	          6	          6	              0
  create checkout                     	         45	         45	             21

# api.benchmark homepage
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve main menu                  	          5	          5	              0
  retrieve product list               	          4	          4	              0
  retrieve secondary menu             	          5	          5	              0
  retrieve shop                       	          2	          2	              0

# api.benchmark product
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  product details                     	         13	         13	              3

# api.benchmark variant
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve variant list               	          9	          9	              2

authors: django-queries dominik-zeglen


text:
Added capability to search product types by value (through the name)

Closes #4199.
Screenshots

Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[x] Database queries are optimized and the number of queries is constant.
[ ] Database migration files are up to date.
[x] The changes are tested.
[x] GraphQL schema and type definitions are up to date.
[x] Changes are mentioned in the changelog.

Here is the report for 56ebec677840c3f13f8ed35c0b61601be182be0b (NyanKiyoshi/saleor @ product-types/search)
Base comparison is b76eaeedff0e9996a119fd537aada7e45685585d.
No differences were found. (click me)

# api.benchmark checkout
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  add billing address to checkout     	         34	         34	             20
  add shipping to checkout            	          7	          7	              0
  checkout payment charge             	         14	         14	              0
  complete checkout                   	          6	          6	              0
  create checkout                     	         48	         48	             24

# api.benchmark homepage
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve main menu                  	          5	          5	              0
  retrieve product list               	          4	          4	              0
  retrieve secondary menu             	          5	          5	              0
  retrieve shop                       	          2	          2	              0

# api.benchmark product
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  product details                     	         13	         13	              3

# api.benchmark variant
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve variant list               	         15	         15	              8

authors: NyanKiyoshi django-queries


text:
Set authorize.net order description to graphql_payment_id for cross referencing

It's helpful to reference a Saleor order from authorize.net. However when payment takes place, Saleor does not have a Order number yet. This mitigates the problem by assigning the Saleor payment graphql ID to the Authorize.net Order description field. It leaves the Order Invoice Number set to payment_information order_id in case in the future we can assign the actual Order ID.
Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.David Burke seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

You should have my CLA on file, I may have submitted it before this bot was set up.
The codecov change is only from going from a empty string to a existing variable.

authors: CLAassistant bufke


text:
Create Rich terminal frontend

Use the Rich library to create a basic terminal/CLI frontend. Build on top of the click CLI started earlier.

Addressed with 42260d73bcbe381da2f20113bd372eef2fc38b15.


text:
Update stable version in repo from 1.4.7 to 1.4.9

Think about update stable version to 1.4.9
Version: stable=1.4.7 (260 days old) => latest=1.4.9 (20 days old)
Installs: stable=433 (57.5%), latest=38 (5.05%), total=753
Click to use developer portal
Click to edit
Do not close this issue manually as a new issue will be created if condition for update still exists.
Please drop a comment if any reason exists which blocks updating to version 1.4.9 at this time.
Note: This is an automatically generated message and not personally authored by bluefox!
@mcm1957 for evidence

Is there any reason to delay updating this adapter at stable any longer?
Please drop a commit if you know any reason to refrain from updating.
If there is no response until 22.10.2024 we could decide to update anyway

PR already exists.


text:
Remove Switch from Perl module

use v5.10.1;
use experimental 'smartmatch';

https://github.com/mishin/Ftree-cpan/commit/af14d6c97da3f85237c6597ef92081fdcf4b41d6

A little nicer way to use smartmatch on perl 5.18

repo: mishin/life-mishinna


text:
Improve the User Interface for Floating Add Button

Current Problem
Whenever the user clicks on the Add button (Floating Button) on home screen which is having documents listed. A jam-packed and frustrating interface appears where the text/description of floating items (Open Camera, Open Files) overlaps the background text (can be seen below). Which doesn’t look like a good interface.

Solution
we can reduce the background visibility on floating button click. This will improve the visibility and hence the more clear UI.
Just for an example I am attaching the screenshot for the same thing implemented in skype application - which is making the background blur/less visible :

So, I want to make the background blur which will make it look a lot beautiful and more focused on buttons, and hence making more handy and clearer UI to the user.
@mishraaditya595 What are your thoughts regarding this ?
If it is okay can you please assign me the issue so that I can move forward solving this issue ?

Sounds good to me, You can start working.

@leoshrey
Hey I wanted to work in this issue under Gssoc21

Just provide me the reference file

@codeakki, good to see that you want to contribute, but this issue is already under progress.
Please look for some other open issues you can contribute to.

Hey @leoshrey, what is the status of the issue?

@mishraaditya595, It's in progress. I've been engaged in some college stuff for a day. Now back in flow.

Hey @mishraaditya595, I tried some possible ways to make the background blur when floating action button gets touched. But whenever I run the app it crashes and throws NullPointerException. Cause I think as FAB is in a Fragment instead of Activity, it is not allowing to invoke that method.
I think, to make it possible first we need to use FAB in Activity that means we've to refactor the code for FAB.
What are your thoughts in this ?
Also if possible please suggest if there is a way to use the method within a Fragment.

Can you let me where exactly does the app crash? And what parameters does the function demand?

Can you let me where exactly does the app crash? And what parameters does the function demand?

It crashes just after the opening animation of ScanIt. And throws this log:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.vob.scanit, PID: 2266
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.getbase.floatingactionbutton.FloatingActionsMenu.setOnFloatingActionsMenuUpdateListener(com.getbase.floatingactionbutton.FloatingActionsMenu$OnFloatingActionsMenuUpdateListener)' on a null object reference
at com.vob.scanit.ui.fragments.HomeFragment.onCreate(HomeFragment.kt:56)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2684)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:280)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1175)
at androidx.fragment.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1255)
at androidx.fragment.app.FragmentTransition.calculateFragments(FragmentTransition.java:1138)
at androidx.fragment.app.FragmentTransition.startTransitions(FragmentTransition.java:136)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1989)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2629)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2577)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:247)
at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:541)
at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:210)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1433)
at android.app.Activity.performStart(Activity.java:7924)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3332)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2044)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7560)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
I/Process: Sending signal. PID: 2266 SIG: 9

Hey! Can I work on this issue?

Hey @leoshrey, any updates on your work? else it will be assigned to @deepsjuneja.

Hey @leoshrey, any updates on your work? else it will be assigned to @deepsjuneja.

Based on https://github.com/mishraaditya595/ScanIt/issues/59#issuecomment-808759678, I am facing build issues. If you can look into it, that's good. Otherwise you can unassign me.

It runs fine on my and other machines.

@deepsjuneja you can start working

@deepsjuneja you can start working

Okay. Thanks!

Hello @deepsjuneja, any updates?

I have partially achieved implementing the desired feature, but I'm still working on it to make it even better. Hopefully, I'll make the pull request soon.
I'm also trying to solve the problem associated with scoped storage. If I am able to tackle it, then I'll inform you.

Ok! Take care.

@mishraaditya595 I think that the issue should be under Level 2. Can you please review it once?

Hey @deepsjuneja, do not worry about it. I will provide an appropriate level according to the work done by you in the PR.

@mishraaditya595 I've generated the pull request. Kindly review.
Also, do I need to fill this Google form too?
https://docs.google.com/forms/d/e/1FAIpQLSd_hEKAJpjRBR7Jh4O76TVbY3MIUhCPiutK-4f20RjENC4z9A/viewform
If yes, kindly tell what does DWOC specify?

Just make a PR and attach the apk file or provide the link to the file. That's it.

https://drive.google.com/file/d/1oemEGHXxnUdjfmkUp8I-ZLcOUGi8YSSt/view?usp=sharing

Hey @mishraaditya595 ! You haven't updated the level. Kindly review that before uploading my score.

authors: codeakki deepsjuneja leoshrey mishraaditya595


text:
Automatically load RVM if available or needed

When deploying to remotes that use RVM, the /etc/profile.d/rvm.sh environment is not automatically loaded. In the past we have simply edited the post-receive hook by hand, but it seems it would be nice to automatically do so if the user is in the rvm group and the /etc/profile.d/rvm.sh script exists.

Totally agree with not merging this.  Tools adding special cases for their infrastructure sets a bad precedent and usually becomes a rich source of bugs and pull requests (support chruby and rbenv too?).  Also, usage of the rvm group seems pretty niche.
That said, yes, groups is cross platform.

Yeah, going to close this because I don't want to embed any specific integrations with 3rd-party tools into git-deploy. Server- and app-specific dependencies and tweaks can be defined in the per-project deploy scripts.

No problem, thank you for the feedback.

authors: bronson hmoore-r7 mislav

repo: mislav/git-deploy


text:
Multiball: Stacked traditional multiballs request too many balls for playfield on second multiball

I have two traditional 3-ball multiball locks devices. Both configured similarly, somewhat like:
multiball_locks:
 lock:
    balls_to_lock: 3
    balls_to_replace: 2
    lock_devices:  bd_lock

multiballs:
  mb:
    ball_count: 2
    ball_locks: bd_lock
    start_events: multiball_lock_lock_full
    replace_balls_in_play: true
    ball_count_type: add

In this scenario, when the first multiball is running (3 balls on the playfield) and the second multiball lock is completed (now 2 balls on the playfield and 3 in the second lock). The second multiball requests 5 balls, which is a problem. It should only request 3 from the ball lock device (for a total of 5 on the playfield). The issue I'm seeing is that there are now 5 balls in play (correct) but two queued ball requests for the playfield (messes up the game).
I believe the culprit may be this line:
https://github.com/missionpinball/mpf/blob/2c85d576e4f62c3ce46811aaa1d8c18175cc6f4c/mpf/devices/multiball.py#L80
since the balls_to_replace is high on additional multiballs. In my case if I just hard code this value to 1 it "works for me" ™  Maybe this line should be balls_to_replace= (from the multiball lock config) balls_to_lock-balls_to_replace
If I'm missing the boat and just have a bad configuration please delete this issue.  On the other hand I'm willing to provide more details/clarity on what I'm seeing as well.

Why do you set "balls_to_replace"? Do you have additional code to handle the last ball which is not replaced?
Can you provide a test case (for "mpf test") with an assertion failing? Ideally a minimal example with just what is needed to trigger it.

I've put together a test case here, I hope this helps.
https://github.com/missionpinball/mpf/compare/dev...rochuck:stacked-mb?expand=1
I don't think the balls_to_replace is the issue, it just happens to work for me, but rather the calculation leading up to
this code, which tries to put too many balls on the playfield:
https://github.com/missionpinball/mpf/blob/2c85d576e4f62c3ce46811aaa1d8c18175cc6f4c/mpf/devices/multiball.py#L126-L128

You are using an unsupported combination of balls_to_replace (see that note below that example) and ball_count_type: add. I'm not sure that it works this way. We had a few issues with this setting. @avanwinkle added this for his specific usecase and I am inclined to remove the option again. What this does in the example can also be achieved by a condition that the lock is full on the _enter event on the ball device.

Basically you could start your multiball on balldevice_bd_lock_ball_entered{devices.multiball_locks.lock.full} instead. Did not test it but something like that should work. That way we would not need balls_to_replace and replace_balls_in_play: true. Those two work in that one exact example or in some very specific cases when you know exactly what you are doing. For everything else they will end up in incorrect ball counts.

Thank you for the help. This issue has forced me to look under the hood a bit so I can get the results I want.

Guilty as charged! Boy howdy, has balls_to_replace caused a lot of people a lot of issues! It was very specific to my setup (a Game of Thrones machine) and I only used with ball_count_type: total and only with one multi ball at a time.

Maybe we should replace the example in the docs first. That is where people seem to get this from. Afterwards we deprecate/remove the settings.

FWIW I couldn't get the stacked multiball to work the way I wanted without using the balls_to_replace/replace_balls_in_play_true config . I went through my "balls to replace" change in the code and it does exactly what I want/need. It does not break the existing unit tests, and allows my unit test case to pass. I will just use this for now.  If you have any interest in integrating this code it is here. (I can clean it up if required)
https://github.com/missionpinball/mpf/compare/dev...rochuck:stacked-mb?expand=1
If not, I'll just run from my own fork until I can figure out how to make my game work with the existing framework.

Thanks Chuck! Would it make sense to make your change conditional, so that it replaces 1 when the type is "add" but replaces the balls_in_play when the type is "total"?

authors: avanwinkle jabdoa2 rochuck

repo: missionpinball/mpf


text:
Bug fix: prevent achievements from enabling after restoring state

This PR addresses a bug in Achievement behavior wherein achievements without enable_events inherit behavior from mode_device.add_control_events_in_mode() and automatically enable themselves when their modes start.
This inherited behavior is contradictory to the achievement's device_loaded_in_mode() behavior, which to calls _reset() or _restore_state() and uses sophisticated logic to determine the desired state of the achievement (including automatically enabling achievements without enable_events defined).
Unfortunately add_control_events_in_mode() creates a callback which is called after device_loaded_in_mode(), so any achievement without enable_events will subsequently have its restored state changed to "enabled".
This PR overwrites the add_control_events_in_mode() behavior for Achievements to do nothing. The expected result is that _restore_state() will handle all of the desired behavior.

Prospector is unhappy:
Messages
========
mpf/devices/achievement.py
  Line: 223
    pep257: D205 / 1 blank line required between summary line and description (found 0)
    pep257: D400 / First line should end with a period (not 's')
Check Information
=================
         Started: 2018-08-21 23:15:29.046836
        Finished: 2018-08-21 23:17:15.629410
      Time Taken: 106.58 seconds
       Formatter: grouped
        Profiles: .prospector.yaml, doc_warnings, strictness_veryhigh, no_member_warnings, no_test_warnings
      Strictness: from profile
  Libraries Used:
       Tools Run: dodgy, mccabe, pep257, pep8, profile-validator, pyflakes, pylint
  Messages Found: 2

Can you fix that? Should we add a test for this case?

Yes, and I'll get some tests up too!

Awesome! That looks really good


text:
Added phone skin to designer

Added phone skin to designer.

Can one of the admins verify this patch?

@AppInventorWorkerBee ok to test

@ewpatton @jisqyv @SusanRatiLane Any other changes needed?

authors: Amerkashi AppInventorWorkerBee ewpatton kkashi01

repo: mit-cml/appinventor-sources


text:
Implement PersonalAudioClassifier for iOS

This PR extracts the iOS specific parts of #3201. This should be merged at the command line to retain authorship on the underlying commits.

Rebased onto latest ucr to resolve merge conflicts.


text:
Typos in readme

Great work! There is a typo in the README
enable_duo_attention_eval(
    model,
    attn_heads,
    num_recent_tokens=64,
    num_sink_tokens=256,
)

num_recent_tokens -> sink_size, num_sink_tokens -> recent_size

Fixed. Thank you!

repo: mit-han-lab/duo-attention


text:
change app.js to group it

we need to style app.js with pretty block comments

to indicate the staff middleware students shouldnt worry about (staff validator, etc)
to indicate the generic express middleware you use every time (body parser)
to indicate the route handling (route.get() routes)

reorganized some stuff in the file to maybe make it a little more clear
don't know what you mean by "grouping"

looks much better. Small nit but would put one more comment over all the const X = require('Y') that this is just javascript syntax for importing the standard libraries that most webservers need. This way students won't think that they won't need it in their own code.

I also would add a header to app.js with something along the lines of
/*
|--------------------------------------------------------------------------
| App.js -- The core of your server
|--------------------------------------------------------------------------
|
| This file defines how your server starts up. Think of it as the main() of your server.
| Lines X - Y imports modules/libraries needed by the server.
| Lines Y - Z defines personal settings (such as your personal database credentials)
| Lines Z - XX launches the express server, and hooks up the imported libraries to your server.
| Lines XX - YY finally define some routes for your server to serve clients your HTML files.
|
*/

on further thought im not positive if the specific line references are a good idea in case we change app.js in the future, but the general high level overview is something students would appreciate.

i added a small header, probably could be made better..


text:
Climate sensor

Would it be possible to add a climate sensor? HVAC

At this moment the API is not fast enough to make this stable. :(

authors: kristianolofsson mitch-dc


text:
"Car is active" binary sensor is not corrrect

Version of the custom_component

0.0.13
Installation method (hacs / manual)
HACS
Installation method of hass (venv, docker, hassio,...)
Venv
Configuration
Default, via config
Describe the bug
The sensor binary_sensor.XXX_car_is_active is always showing true.
Debug log
Using the python library, I've looked at the domain and it shows...

[readiness] Elements: 1 items
	[readinessStatus]
		Connection State:
			Is online: True
			Battery power level: comfort
			Daily Power Budget Available: True

I.e., The "Is Active" parameter does not appear to be there.
The sensor appears to be returning the previous value.
Would it be more appropriate to return None?

That doesn't happen to me with latest release 0.0.13, but with the latest changes in the repo - check #82

Tested it after latest release and it's fixed :)

Upgrade to the latest, and it’s still always showing “on” here.

Upgrade to the latest, and it’s still always showing “on” here.

Same here, already reported via #82 to be reopened.

authors: ColinRobbins mitch-dc pplucky