Sql id auto increment

DAD 220 Chapter 3 help

2024.05.19 03:00 Phoenixkillerx DAD 220 Chapter 3 help

I'm getting the following error:
ERROR 1292 (22007) at line 10: Incorrect date value: '1960' for column 'ReleaseDate' at row 1 
submitted by Phoenixkillerx to SNHU [link] [comments]


2024.05.19 02:54 IronHammer67 Prisma, Mysql and BigInts oh my

So I wanted to share my journey with everyone and shine some light on a weird problem that is probably common but doesn't seem to be discussed much.
I am in the process of rewriting a large 15-year old PHP/jQuery/MySQL app in Nuxt. One of my goals is to support my largeish (60 tables) legacy MySQL database. I was really looking forward to leveraging Nuxt's API and directory magic to modernize my old app!
I had used mysql2 successfully in a Vue 3 project I built this past winter and wanted to use it in Nuxt. Turns out there wasn't a documented way to do so. So I set about figuring out a way to wire it up into Nitro myself. I documented my findings here but I wasn't really happy as my solution wasn't the "preferred" way to do things. Pooya says we should not be attaching things to the nitroApp instance.
Time passed and I started playing with Prisma as it has direct support for MySQL and Nuxt. I figured I needed to wade into learning Prisma anyway. It is pretty cool but seems unnecessary since I already know how to write good SQL. The code hints are nice I guess but I digress...
I managed to get Prisma to "npx prisma db pull" my database schema (even on an older MySQL 5.7 setup) and start querying data. That was quick and easy. I was impressed!
But I immediately ran into a problem with BigInt. It seems even though I had no columns defined as BigInts I was getting the error: "Do not know how to serialize a BigInt". Turns out the reason for this is that my Int() columns are unsigned (I wanted to double the potential number of max id's for my tables) and this causes Prisma to *think* the data is a BigInt even though the maximum number of records in any of my tables is less than 10,000. Strange behavior indeed.
On a side note, the npmjs mysql2 package has a way to specify that you want the package to return BigInts as a string since JSON is the one choking on them. I couldn't find a way to tell Prisma to do this.
What I have done to circumvent the issue for now is to force Prisma to return what it perceives as BigInts as a string value, which is fine for my purposes.
I added the following code to the top of the defineEventHandler() function call in my /serveapi/{endpoint} file:
 BigInt.prototype.toJSON = function () { const int = Number.parseInt(this.toString()); return int ?? this.toString(); }; 
Now I am able to call prisma functions as normal and return the results. Now I can set my auto-increment record id's to BigInts as much as I want. Happy me!
The drawback to this approach is that I will have to add this code to every endpoint I write in my app. I am sure I will discover a way to have Prisma execute this code during instantiation but I haven't found a way to do it yet.
So I just wanted to share my story for folks who may be beating the crap out of Google/DuckDuckGo looking for a solution to this issue.
Thanks and cheers!

submitted by IronHammer67 to Nuxt [link] [comments]


2024.05.17 19:47 _DudePlayz_ Help with a thingy that i try to make

Help with a thingy that i try to make
So, i was trying to make sim racing pedals (one for throttle and one for brake) with an arduino leonardo and two 10k potentiometers. Is the schematic that i did right? I tried to see if this works on arduinoIDE with the serial.print but it showed me error (error message is in the second photo)
submitted by _DudePlayz_ to arduino [link] [comments]


2024.05.17 19:36 frodeborli Template literals in PHP

There are some sweet language features I would love to see in PHP. One of them is template literals.
A template literal is a way to execute a php function, that looks like a DSL. So you would do something like:
UPDATE
I need to provide better examples I realize:
The point with tagged template literals is that you could safely embed user input in an sql query written like this:
$result = querySELECT * FROM tablename WHERE column={$_GET["x"]};
The query function would know to properly escape the user value. It would not be possible to embed user values that aren't properly escaped.
There are values that can't be embedded in strings, for example a Closure or a database connection or even a file resource. I think you really need to see it in action tu understand how powerful and revolutionary it can be.
All template engines evaluate the variable before it reaches the template engine - and it must evaluate to something stringable. This limits the use case, since the value becomes serialized before it reaches the template engine. The only way around it, is to create placeholder strings and pass variables in an array or something - which is tedious.
With template literals, you can pass in an object, or a Closure in the string. Then the template literal function can interact with the object BEFORE it is turned into a string.
You could for example write something like this if your library is V8js or lua-sandbox:
v8js` var x = {function($v) { /* php code */}; x(); `; 
In the above example, only template literals could allow a complex type like a PHP Closure to be embedded in the syntax of for example V8 or Lua Sandbox.
You could make a string replacement function that does this:
replace/\b[a-zA-Z](?{strtoupper(...)}[a-z])[a-zA-Z]*\b/($some_string);
And this call would make the second character of every word containing only a-z characters. Instead we now have to use preg_replace_callback, and it is still limiting and we may have to run multiple passes.
Another example is for example if you are writing a PEG grammar parser:
$someParser = peg Literal := /[a-zA-Z][a-zA-Z0-9]*/ => {fn($x)=>new Literal($x)} Bool := /truefalse/ => {fn($x)=>$x==true} (* rest of your grammar follows *) ;
I know the above seems strange to some of you, it was to me - but it opens a lot of doors for new innovations. I understand it is hard to imagine the use for this, but I can promise it is one of the more amazing inventions i programming languages i have seen in years, and I programmed for 30 years.
/UPDATE
$this->template = htmlsome {some_func()} html;
This would actually be the same as invoking
$this->html = html(["some", "html"], some_func()); 
It is supported in recent javascript and in NIM language. Probably elsewhere too. It would enable you to write a properly escaped query like this:
$db->prepare`SELECT * FROM table WHERE id={$id} AND x={get_user()}`; 
The code editor could properly color code the sql, and the actual function invocation would be:
$b->prepare(["SELECT * FROM table WHERE id=","AND x="], $id, get_user()); 
So escaping the arguments becomes implicit. While typing your query, an sql language server could pro ide autocomplete for your query, since IDEs can recognize that the template literal indicates a specific different language.
It is a really powerful concept for mixing code with strings. Regex also:
$r = new regex`/.*/`; 
Since the syntax for function invocation is so unique, it can easily be implemented and IDEs like VS Code could color code the contents.
$message = markdown` # my Markdown `; // With syntax highlighting and validation 
This could be implemented by hijacking the auto loader, without changing the PHP engine, but the PHP ecosystem doesn't have a system like babel for javascript, so I think it should be part of the language.
Any opinions?
submitted by frodeborli to PHP [link] [comments]


2024.05.16 20:06 BeigePerson Help Loading Backfill Tables into RMDBS with Generated IDs

I am loading a backfill of normalised files and am struggling. I really feel like I am missing something quite obvious with the best way to do this seemingly simple task... I'd be very grateful for any pointers
I have:
database staging tables (loaded from files) parent_staging: id integer other columns child_staging: parent_id id other columns 
The ids have integrity within the the staging tables but would NOT within the main database tables
And
Permanent database tables: parent_perm: dbid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, other columns child_perm: dbid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, parent_dbid INT NOT NULL, FOREIGN KEY (parent_dbid) REFERENCES parent(DBID) , other columns 
I would like to add the data in the staging tables to the permanent database tables, generate new IDs (the DBID's) and abandon the staging id's.
I can insert parent_staging(other columns) into parent_perm without issue.
But how can I get the generated parent_perm.dbid's in order to insert child_staging into child_perm?
Ideas: 1. insert into parent_perm one row at a time and get last_insert_id() (seems slow and painful) 2. join parent_perm and parent_staging and then child_staging (seems like the best solution, but I have nothing to join on!) 3. join parent_perm and parent_staging and then child_staging (ON some kind of row_number method with added row_number columns) 4. build some ids in the staging tables which are prepared for the parent tables (ie add row_number columns to staging tables and increment each of these by last_insert_id() from associated parent table) (but now I have to change the permanent tables not to use AUTO_INCREMENT)
none of these ideas seem like good ones.... I really feel like I am missing something obvious....
submitted by BeigePerson to dataengineering [link] [comments]


2024.05.16 12:50 Positive-Dealer322 Cannot deploy BigQuery ML Model to Vertex AI Endpoint

Cannot deploy BigQuery ML Model to Vertex AI Endpoint
Hello I have trained a ML model using BigQuery ML and registered it to Vertex AI Model Registry. It is fine until these steps. But when i am trying to deploy to an endpoint I get the following errors. The first image is in Vertex AI Model Registry page. The second image is from the private endpoint's settings.
I am getting "This model cannot be deployed to an endpoint" error with no other logs or trace why this is happening
At the documentations and the guides, I have not seen any error like this so I am pretty stuck with it now.
Here is my CREATE MODEL SQL query in order to create the model:
CREATE OR REPLACE MODEL `my_project_id.pg_it_destek.pg_it_destek_auto_ml_model` OPTIONS ( model_type='AUTOML_CLASSIFIER', OPTIMIZATION_OBJECTIVE = 'MINIMIZE_LOG_LOSS', input_label_cols=['completed'], model_registry="vertex_ai", VERTEX_AI_MODEL_VERSION_ALIASES=['latest'] ) AS WITH labeled_data AS ( SELECT tasks.task_gid AS task_gid_task, tasks.completed, tasks.completed_at, priority.priority_field_name AS priority_field_name_task, category.category_field_name AS category_field_name_task, issue.issue_field_name AS issue_field_name_task, tasks.name AS task_name, tasks.notes AS task_notes, IFNULL(stories.story_text, '') AS story_text FROM `my_project_id.pg_it_destek.asana_tasks` AS tasks LEFT JOIN ( SELECT task_gid, STRING_AGG(text, ' ') AS story_text FROM `my_project_id.pg_it_destek.asana_task_stories` GROUP BY task_gid ) AS stories ON tasks.task_gid = stories.task_gid LEFT JOIN `my_project_id.pg_it_destek.asana_task_priorities` AS priority ON tasks.priority_field_gid = priority.priority_field_gid LEFT JOIN `my_project_id.pg_it_destek.asana_task_issue_fields` AS issue ON tasks.issue_source_id = issue.issue_field_gid LEFT JOIN `my_project_id.pg_it_destek.asana_task_categories` AS category ON tasks.category_id = category.category_field_gid ) SELECT * FROM labeled_data; 
https://preview.redd.it/vnankgl4ur0d1.png?width=2108&format=png&auto=webp&s=b8f78ec2e93044abc406db16a9679097f4818581
https://preview.redd.it/ps8t459fur0d1.png?width=1410&format=png&auto=webp&s=4608e7c66948acd716661f15b6c6a26a0a56c7f5
submitted by Positive-Dealer322 to googlecloud [link] [comments]


2024.05.16 02:12 sheriffderek Massive Skill Gap: Are Coding Bootcamps and New Developers Missing the Mark? A recent chat with DonTheDeveloper.

A few weeks ago, someone posted a link to one of Don’s rants and I went through and commented on each of the points. I can't find that post, but I had copied it over here: https://www.reddit.com/perpetualeducation/comments/1c7k9re/donthedeveloper_on_a_rant_about_how_aspiring/
We had a chat about it. Here’s the video/podcast: -> https://www.youtube.com/watch?v=EHmqZkC3LqU&lc
Don titled it: There's a MASSIVE Skill Gap Among New Developers
---
I'll attempt to write a bit about that - (even though we went over many other topics - and I'm having a hard time grouping them)
It’s easy to simplify this into the market or the boot camp or the tech stack or what's fair or the resume - but I think people are missing the various multidimensional aspects at play.
Is it all of those things - and more? (Yes). And it's the student too. We're all different (cue reading rainbow moment). But it's true. Some of us are slower. Some of us are faster. Some of us are faster but miss the details. Some of us have a background that aligns neatly with tech. Some of us already know what job we want and why - and other people just want to make a good bet on a stable career. No matter what zone you're in, we still have to face the music - and deal with (trigger alert) - the truth.
The market is real. Companies aren't aggressively hiring random barely capable developers right now (like they have in the past). They're scared and holding on to their money. They also kinda realized they were spending more money on middle management and probably developers too - and are going to need some time to figure out how to make profitable businesses (or how to keep getting more VC funding to burn through).
But if there's a huge gap between your skills/experience and what it takes to do the job you're applying for, none of the other factors matter.
Many people choose a coding boot camp based on superficial factors like the price, the timeline, the website design, and the sales pitch. They often don't consider other important aspects because they simply don't know better. This isn’t unlike any other product or service or school.
Some people pick out a boot camp and learn a bunch of awesome stuff and they go out there and start a new career and for some reason, they don’t come back to Reddit to tell us about it. There are some legit colleges and boot camps and other alternative learning paths out there that are really great. It's just a fact.
If you read the bootcamp marketing, paid your tuition, went through the steps they lined out, and came out the other end unable to get that job they promised you, well - that’s awkward. Maybe for you, it’s that simple. If you feel like you got a raw deal, I’m sorry. There are some businesses that should be ashamed of themselves - but they won't be. All you can do is warn other people. That’s over now. We can only work with the present.
For people who really want to work in this industry - they'll keep moving forward. At the end of the day, this is the playing field. So, if you want to get off the bench, we’re going to have to design a path to that – and you might need to rethink some of your assumptions.
It could certainly be said that new developers are now expected to know about–and have experience with–a lot more things.
Are the expectations that someone brand new to development is going to be able to get a job unreasonable? Well, does it matter what someone’s opinion about that is? You either want the job - or you don’t. And you need to know how to do the job, or no one will hire you. Do you need to know everything on this huge list to get an entry level position https://roadmap.sh/javascript ? (no) (in fact - close that - and don’t ever look at it again)
When I started (at the age of ~30) (in ~2011), you needed to know HTML, CSS, (Probably some PhotoShop to get your assets), maybe a little PHP (and likely HTTP and more about URLs and request types and forms), FTP and DNS to get your site hosted, and maybe some JavaScript. You might have used jQuery to help out or Knockout.js. And you had to know how to hook up a database and MySQL and probably a CMS or some sort. And maybe your code was a mess or maybe it adhered to some common patterns. But that was life. Not everyone needed to know all those things. Some people would focus more on getting the mockup into the HTML and CSS. Other people might focus on the server and the PHP or Perl or Java. There were all sorts of jobs and some of them were done by people with a formal education in Computer Science studies and other people just figured it out as needed. There was a lot of work to be done. Lots of custom stuff to build and maintain. And it was just normal to learn more incrementally as the years went by. You could totally get a job knowing just HTML and CSS (and you still can BTW). There was still an infinite amount of things you could know. But it seemed to ramp up naturally because we were closer to the grain of The Web.
So, what do people learn now? (Generally) They rush through some HTML and CSS really quick (which actually teaches them more bad habits than good). They rarely learn about DNS or FTP because a tutorial showed them how to type a few random things into a terminal to have their site on a free service and they don’t buy a domain name because there’s a free subdomain. Apparently paying for anything is for suckers and companies that don't give you things for free are evil capitalistic pigs who should be shut down. New devs don’t know much about servers because their text editor is actually running an advanced web application behind the scenes that starts a virtual server and runs all sorts of other things they don’t understand outside of that context - like connecting to version control, opening a terminal pane, SSH, code completion and typeahead, autoimport completion, AI suggestions and other additional layers like typescript and many other linters to tell them where all their errors are. If they couldn't use VSCode - they might be dead in the water. It can feel like you’re just a bag of meat being yelled at by VSCode as you try and solve the errors and remove all the red lines. And we do all of these - to put the training wheels in place.
And I’m not saying that a LAMP stack doesn’t have it’s own level of black-box and mysteries with how Apache handles your HTTP requests and MySQL starts up it’s own server - but we have to be comfortable with some level of abstraction or we’d be writing all ones and zeros at the machine code level.
So, the new developer is manning this huge stack of tools unknowingly, but they do get a lot of benefits. We can spin up a pretty complex web application with a front-end to make requests, a server to talk to a database and other third-party systems and respond back to the client/front-end, and an auth layer to make sure people are properly signing in and only seeing what they need to see. There are abstractions for HTML and CSS and JS that put that template logic and controller logic into a neat little component file (which is great) and that component file is properly registered based on file name conventions and everything gets set up in this larger system of conventions that all happen behind the scenes in the framework architecture. So, as a new developer - you can really ride the framework and know hardly anything about how it works - as long as you know the language to speak to this layer of the abstraction (the API).
These aren't just arbitrary add-ons that people made to complicate things. They solve real-world problems. The new dev won't really understand what they are - but I'm not saying we should just get rid of them. They allow us to move faster and to build interfaces and business logic without having to write tons of behind the scenes repeated structural code by hand. And with those training wheels, we have more time on our hands. We can also add in the chance to further define our programs with safety measures and plan automated testing routines, and built-in documentation of our code base. We can keep adding layers and layers or pull in more and more third-party tools. It’s pretty amazing. But what people end up learning is how to maintain that configuration - and there’s only so much time - and so, they end up learning 10% of all the things you used to need/want to know. And some jobs have a path for that. But there's likely going to be a long-term cost for you.
Arguably - it doesn’t matter how much “code” you know - and making things is what matters. And that’s true. That’s what matters to the business that pays you. And to the school that wants you to feel good about your progress. But I think you should protect your learning journey. It’s for you. It’s going to be what you carry on throughout the years and it’s a seed.
Getting proficient with a popular tech stack - when the market is booming proved to be a great decision for boot camps and their students. And I'd bet that the majority of people mean well.
But when it's not booming, students are in it for the wrong reasons, schools have tightened up and moved online, the market has plenty of devs who already have 5+ years working with that framework/stack -- then all of the sudden - the surface-level fake-it-till-you-make-it path (as much as I respect that) doesn't work as well. You're going to have to put in some more energy.
When it's obvious that you can't build an HTML page with semantic markup, that's accessible, and has a universally pleasurable experience, and you can't write CSS without a UI framework or do anything custom, it's obvious. You should be aware of that gap. When you've never owned a domain name or setup a deployment pipeline, you should be aware of that gap. When your personal website looks like your boot camp gave it to you, you should be aware of how that looks. When you can't take a server-side scripting language like Python or Go or PHP and build out a little personal website framework - you should be aware of that gap. When you can't plan a project and don't have experience with diagrams and explaining things, you need to be aware of that gap. When you've never written about your process or created any case-studies to explain your projects, you should be aware of that gap. When your only proof of work is the class assignments, you should be aware of that gap. When your github history goes dead after the last day of class, you should be aware that we'll see that. When you claim to know nothing about visual design and that it's for someone else on the team - you should be aware of that gap. If you refuse to turn on your camera and just want to be left alone, you should be aware of that huge gap. If you can't build a little prototype app without React, they you probably don't JavaScript, and you should be aware of that gap. And there will ALWAYS be a gap. There's always more to learn. So - it's an important skill to know what to learn and why - and when. You can't learn everything. And if you're having a hard time finding work right now, then get clear on your goal. Stop applying for general "Software engineer" jobs you aren't ready for. Narrow your scope. Figure out a job that you think you can do confidently. Get clear on how big your gap is and what you need to learn to get centered and confident with your toolset. Ideally, it's fun. Try and ignore all the doom and gloom and focus on your own personal goal.
It's not just the market. Too many people are applying for jobs they aren't anywhere near qualified to do. And it probably doesn't feel good. But luckily - you can learn the things and get back on track.
EDIT spelling and some grammar
submitted by sheriffderek to codingbootcamp [link] [comments]


2024.05.15 15:38 rsmith02ct Big Bugfix for 21.300 just came out

Details here. It seems to come with an updater that only patches the parts of the program that need updating- for me that was ~100MB and too seconds.
Quick update- there are reported issues with AMD GPUs crashing. I'd skip 314 if you are on AMD until that is resolved.
Anyway here's what's new:
Improvements and Bug fixes:
Known issues:
You may download this update via the auto-update feature or directly from here.
https://www.vegascreativesoftware.info/us/forum/update-vegas-pro-21-build-314--145714/
submitted by rsmith02ct to VegasPro [link] [comments]


2024.05.15 07:18 Kartibok1 Corrupted ID field in terminal (konsole)

Hi all,
Many thanks for taking the time to assist. I have an issue on a test database called licences and table called hr. The table was created by:
CREATE TABLE hr ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50), first_name VARCHAR(50), last_name VARCHAR(50), staff_number INT, email VARCHAR(50)
);
I have a randomly generated staff list from a small python script that I use (by importing faker). This is imported using the following:
LOAD DATA INFILE '/valib/mysql-files/users.csv' INTO TABLE hr FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 ROWS (username, first_name, last_name, staff_number, email);
This all works correctly and shows as expected within DBGate and Mysql Workbench, however, for some reason, when I use the terminal with any command that includes "email", it causes the formatting and reporting of the "id" field to corrupt:
mysql> select id, username, staff_number, email from hr where id < 21; +----+---------------+--------------+-------------------------------+ id username staff_number email +----+---------------+--------------+-------------------------------+ lopezd 10959853 dennis.lopez@jorj.net 2 nelsonk 15299188 kimberly.nelson@jorj.net xr 19548511 randy.fox@jorj.net garciac 12272330 cody.garcia@jorj.net hughesd 19862339 donald.hughes@jorj.net 6 cisnerosj 18264774 joseph.cisneros@jorj.net
Finally this is the hr file as a csv:
[~/Documents/cscode]$ cat users.csv head Username,First Name,Last Name,Staff Number,Email lopezd,Dennis,Lopez,10959853,dennis.lopez@jorj.net nelsonk,Kimberly,Nelson,15299188,kimberly.nelson@jorj.net foxr,Randy,Fox,19548511,randy.fox@jorj.net garciac,Cody,Garcia,12272330,cody.garcia@jorj.net hughesd,Donald,Hughes,19862339,donald.hughes@jorj.net cisnerosj,Joseph,Cisneros,18264774,joseph.cisneros@jorj.net
Any help or feedback is appreciated.
Regards
Kartibok
submitted by Kartibok1 to mysql [link] [comments]


2024.05.14 16:09 Rangerborn14 ModuleNotFoundError: No module named 'pymysql'

I've been running a code that generates a login page for a desktop app. By logging in succesfully, the user would be sent to the main UI of the app ("Mainwin.py"). However, everytime I tried to log in, it gives me an error about 'pymysql' not being found, even though I already have it installed. The error is caused by a file named "actividad.py", which is used to show what user has been using the app lately:
from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QDialog, QVBoxLayout, QTableWidget, QTableWidgetItem import pymysql class ActividadWindow(QDialog): def __init__(self): super().__init__() self.setWindowTitle("Actividad de Usuarios") self.setGeometry(100, 100, 400, 300) # Ajusta el tamaño según tus necesidades self.layout = QVBoxLayout() self.tableWidget = QTableWidget() self.layout.addWidget(self.tableWidget) self.setLayout(self.layout) # Conectar a la base de datos y cargar datos en la tabla self.cargar_datos() def cargar_datos(self): conexion = pymysql.connect(host='127.0.0.1', user='root', password='password', database='test') cursor = conexion.cursor() cursor.execute("SELECT * FROM actividad") datos = cursor.fetchall() self.tableWidget.setRowCount(len(datos)) self.tableWidget.setColumnCount(len(datos[0])) encabezados = [description[0] for description in cursor.description] self.tableWidget.setHorizontalHeaderLabels(encabezados) for fila, dato_fila in enumerate(datos): for columna, dato in enumerate(dato_fila): self.tableWidget.setItem(fila, columna, QTableWidgetItem(str(dato))) conexion.close() 
What's strange is that when I run the "Mainwin.py" file, it all runs smoothly. It's only when I run from the login page code that the error is happening. Here's the code of the login page for reference:
from tkinter import * from PIL import Image, ImageTk from tkinter import messagebox import pymysql import subprocess import psutil from datetime import datetime windows=Tk() windows.title('AquaSense Login') windows.geometry('490x240+500+100') # windows.resizable(0,0) #forgot password def forgot_password(): windows.destroy() import forgotpassword #Button Definition process def create_one(): windows.destroy() import Registration2 def login(): if idEntry.get() == '' or passwdEntry.get() == '': messagebox.showerror('Alert', 'Please enter all entry fields!') else: db = pymysql.connect(host='127.0.0.1', user='root', password='password', database='test') cur = db.cursor() queryActi = 'use testP' cur.execute(queryActi) queryActi='create table if not exists Actividad (actId int auto_increment primary key not null, userId int,FOREIGN KEY (userId) REFERENCES personaldata(id),fecha DATETIME) ' \ cur.execute(queryActi) query = 'select * FROM personaldata where passwrd=%s AND username=%s' cur.execute(query, (passwdEntry.get(),idEntry.get(),)) roles = cur.fetchone() if roles == None: messagebox.showerror('Alert!', 'Incorrect username or password') return else: login_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S') user_id = roles[0] # Assuming the ID is the first column in personaldata table insert_query = 'insert into Actividad (userId, fecha) VALUES ( %s, %s)' cur.execute(insert_query, (user_id, login_time)) db.commit() messagebox.showinfo('success', 'Login Successful') # clear screen idEntry.delete(0, END) passwdEntry.delete(0, END) main_running = False for proc in psutil.process_iter(): if 'Mainwin.py' in proc.name(): main_running = True break if not main_running: # Launch the PyQt main page script using subprocess subprocess.Popen(['python', 'Mainwin.py']) # Close the original tkinter login window windows.destroy() #username def on_entry(e): idEntry.delete(0, END) def on_password(e): name=idEntry.get() if name == '': idEntry.insert(0,'username') #password def on_enter(e): passwdEntry.delete(0, END) def on_Leave(e): password = passwdEntry.get() if password == '': passwdEntry.insert(0, 'password') #for hiding data on the entry fields by clicking on the check box def show(): passwdEntry.configure(show='*') check.configure(command=hide, text='') def hide(): passwdEntry.configure(show='') check.configure(command=show, text='') frame=Frame(windows, width=700, height=400, bg='light blue') frame.place(x=0,y=0) LogoImage=PhotoImage(file= r'C:\Users\UserPC\Downloads\Personal_Registration_Form-main\Personal_Registration_Form\user (1).png') idlabel=Label(frame, text='Nombre', fg='black', image=LogoImage, compound=LEFT, bg='light blue', font=('Calibre', 14, 'bold')) idlabel.grid(row=1, column=0, pady=20, padx=1) passwordImage=PhotoImage(file= r'C:\Users\UserPC\Downloads\Personal_Registration_Form-main\Personal_Registration_Form\padlock.png') passwdlabel=Label(frame, image=passwordImage, compound=LEFT,fg='black', bg='light blue', text=' Contraseña', font=('Calibre', 14, 'bold')) passwdlabel.grid(row=3, column=0, pady=10, padx=3) passwdlabel.place(x=10, y=70) idEntry=Entry(frame, width=39, bd=3) idEntry.grid(row=1,column=2,columnspan=2, padx=57) passwdEntry=Entry(frame, width=39, bd=3) passwdEntry.grid(row=3, column=2, columnspan=2) #application of erasable text on the entry fields idEntry.insert(0, "username") idEntry.bind('', on_entry) idEntry.bind('', on_password) passwdEntry.insert(0, "password") passwdEntry.bind('', on_enter) passwdEntry.bind('', on_Leave) #btn loginbtn=Button(frame, text='LOGIN', bg='#7f7fff', pady=10, width=23,fg='white', font=('open sans', 9, 'bold'), cursor='hand2', border=0, borderwidth=5, command=login) loginbtn.grid(row=9, columnspan=5, pady=30) donthaveacctLabel=Label(frame, text='¿No tienes una cuenta?', fg='black', bg='light blue', pady=4, font=('Calibre', 9, 'bold')) donthaveacctLabel.place(y=150) createnewacct = Button(frame, width=15, text='Registrate', border=0, bg='white', cursor='hand2', fg='black', font=('Calibre', 8, 'bold'), command=create_one) createnewacct.place(x=10, y=179) forgtpw=Button(frame, text='¿Olvidaste la contraseña?', fg='black',border=0, cursor='hand2', bg='light blue', font=('Calibre', 9, 'bold'), command=forgot_password) forgtpw.place(x=310,y=102) check = Checkbutton(frame, text='', command=show, bg='light blue') check.place(x=440, y=83) ico = Image.open(r'C:\Users\UserPC\Downloads\Personal_Registration_Form-main\Personal_Registration_Form\icon (1).png') photo = ImageTk.PhotoImage(ico) windows.wm_iconphoto(False, photo) windows.resizable(False,False) windows.mainloop() 
Anyone knows what's causing this?
submitted by Rangerborn14 to learnpython [link] [comments]


2024.05.14 12:45 Errora403 PUBG MOBILE VERSION 3.2 UPDATE ANNOUNCEMENT

PUBG MOBILE VERSION 3.2 UPDATE ANNOUNCEMENT
Report bugs here and earn rewards: https://pubgmobile.live/support
PUBG MOBILE will begin pushing out the update on 5/13 at 2:00 (UTC+0). Service will not be interrupted. To ensure a quick and smooth update, please be in a good network environment and make sure you have enough available storage on your device.
Update Reward: Update the game between 5/13–5/27 (UTC+0) to get 3,000 BP, 100 AG, and a Mecha Warship Theme (3d).

Key Updates

  1. New Themed Mode "Mecha Fusion": Engage in thrilling battles in a brand new battleship themed area with new mecha vehicles!
  2. World of Wonder Updates: Bring your competitive experience to the next level with new mecha gameplay!
  3. Firearm and Vehicle Updates: P90 and Skorpion have been rebalanced. QBZ added to Erangel and Miramar. Select vehicles now have a delayed explosion mechanic. Experience a different kind of battle!
  4. Collection System: The Collection System is here! Start growing your collection today!
  5. Home: The mysterious Elegant Ancient Capital resource pack is coming soon! Build your dream Home and show off your creativity in the Home Competition!

New Themed Mode: Mecha Fusion

Available: 2024/5/13 at 2:00 (UTC+0)–2024/7/9 at 20:59 (UTC+0)
Supported Maps: Erangel, Livik, and Miramar (Ranked and Unranked)
https://preview.redd.it/6m82y04sfd0d1.png?width=1384&format=png&auto=webp&s=a0ce25f8079e2fabcfe43c9bb5b98fb3d648170e

New Mecha Vehicles

  • Strider: A two-seater vehicle with the ability to jump. It's armed with missiles that can be used to bombard designated areas. Missiles can be replenished at the Repair Station in the Assembly Base.
  • Levitron: A special vechile that can switch between a speed form and a magnetic form. Serves as the upper-body component that combines with a Strider to form the Armamech.
    • In speed form, the maximum speed and hover height will be increased, and the vehicle gains a "collision acceleration" ability: it will not slow down when it hits an obstacle. Instead, it will accelerate using the stored magnetic energy.
    • In magnetic form, the maximum speed and hover height will be reduced, but it can activate a "Magnetize" ability to grab and toss characters, vehicles, and specific objects.
  • Armamech: A four-seater vehicle combined from a Levitron and a Strider. It can also be directly summoned from the Steel Ark.
    • It possesses 2 weapons that it can freely switch between: the Strider's missiles, and the Levitron's "Magnetize" ability.
    • It has a boosted jump that enables it to leap high and far with the assistance of jets.
    • Bring a Levitron and a Strider close together to combine them. After combining, the pilot of the Levitron becomes the pilot of the Armamech. It can also be separated at any time.

Brand New Environments

  • Steel Ark:
    • A giant space battleship that will land on the map at the start of a match. You can enter it and explore inside. The core of the Steel Ark is a platform where you can summon the Armamech from the skies! You can launch yourself into the air in this mecha for everyone to see.
    • The ark consists of many areas. You can find all kinds of supplies and Supply Crates at the Command Post, Dormitory, Warehouse, and more.
    • From the landing pad, you can board an evacuation Wingman, which will take you straight to the Playzone!
    • You can use elevators and ziplines in the ark to get around.
    • Steel Ark Air Drop: A Steel Ark loaded with supplies will fly around during the match and drop supplies consisting of an Air Drop Crate and several Supply Crates at specific drop points.
  • Assembly Base:
    • The Assembly Base contains a Mecha Repair Station. Approach it in a mecha to replenish the mecha's health, fuel, and missiles.
    • On the top floor of the Assembly Base, there is a detector that can determine the location of crates within the Assembly Base. An Access Card can be found in one of the crates, which can be used to open the door to the Secret Room and get loads of supplies.

New Items

  • Jetpack: Pick it up and equip it to increase movement speed. It possesses the ability to hover in the air for a short duration. It consumes Energy rapidly when lifting off. Energy will only be replenished when you reach the ground. The Jetpack has a Health bar that protects you from damage to your back and arms. It will be destroyed after taking a certain amount of damage. When reaching a certain speed while moving forward, it can switch to a speed form. You will perform a special action when you tap "Lift Off" as it switches to the speed form. The Jetpack comes with the "Magnetize" ability, but you will not be able to fly fast when using it.
  • Personal AED: If you have this item, you can tap self-rescue after being knocked down. Once successful, you will recover from the knocked down state. Each player can only carry one of these items. Self-rescuing will be interrupted if you move while using this item.
  • Magnet Gun: This is a downgraded version of the Levitron's "Magnetize" ability in gun form. Switch to it by tapping on the firearm bar. It works the same as the Levitron's "Magnetize", but with reduced values.
  • Respawn Beacon: Throw the beacon on the ground to mark a location that the plane will pass over. Recalled teammates can parachute into the match again at the cost of a respawn chance. Teammates who have used up all their respawn chances cannot respawn.
  • Quick Parachute: When parachuting, a quick parachute button will appear at a certain height in the air. Tap it to immediately deploy the parachute which can also be freely put away.
  • Repair Station: Approach the Repair Station in a mecha to replenish its health, fuel, and missiles.

New Legendary Pilot Challenge

Get themed items, special vehicle cosmetics, Armamech dance emotes, special Elimination Broadcasts, and more by completing this difficult themed mode challenge.

World of Wonder

Available: Releases with the version
https://preview.redd.it/p1fd1vgtfd0d1.png?width=1384&format=png&auto=webp&s=e85c32e7ca039909f454cf08cf359f0df7137de5

World of Wonder Updates

  • Fuzzy search is now supported. You can search for maps by creation ID, creator UID, creation name, and description.
  • Added the friends tab to check what creations your friends have made at a glance.
  • Gift Access Point: You can now send Space Gifts from the creation details page and the creator's profile page.
  • You can view your play data and creation data in WOW on your player information page.
  • Ranking Improvements: Added support for more variables. Matches will now announce when a ranking player is in the match.
  • Copied Creations Limit: The number of copied creations you can have (including creations that are already published or those under review) is limited based on your Creator Level. When the limit is reached, you can only publish original creations unless you take down an existing copied creation.
  • Improved map recommendations and showcasing. Updated the WOW Creator page.

New Gameplay Devices

  • Contested Object Device: Use this device to spawn a contested object, which players can hold in their hands similar to "capture the flag".
  • Contested Object Handover Device: Contested objects can be handed over to this device for rewards.
  • Defensive Tower Device: Use this device to generate a fixed defense tower and configure its weapon type.

Gameplay Device Improvements

  • PvE Enemy Spawn Device: Supports spawning PvE enemies at random, configuring the PvE enemy's type, and randomizing their weight. You can also configure the PvE enemy's team.
  • Random Action Device: Supports storing the result of a random integer in a custom variable.
  • Special Vehicle Device: Added mechas.
  • Map Indicator Device: Supports real-time display of icons and text in the game.
  • Area Trigger Device: The action of the specific object entering the zone can be detected by the Area Trigger Device.
  • Overall Action Device: The action of players leaving the match can be detected.
  • Humanoid Enemy Spawn Device: Can now add buffs to spawned humanoid enemies.
  • Grouped Object Action Device: Supports configuring grouped objects. Loading any one of them automatically removes the others.
  • Item Issuance Device, Item Spawn Device, Custom Shop Device: Added 5.7mm ammo and the MG3.

New Interactive Objects

  • Target Dummy: A target dummy from the single-player training stage that shows damage numbers when hit and has several poses.
  • Soccer Ball: A soccer ball that moves upon contact.

Interactive Object Improvements

  • New Dynamic Moving Object Actions: Every new movement method for moving objects has a corresponding action. They can be activated by the detectable actions of other devices.
  • Guiding Lines: Launch pads and trampolines have guiding lines that show the trajectory of the player being launched into the air.

Controls & Interaction

  • Guiding Lines When Placing Objects In Midair: When placing objects in the air, guiding lines that project the current object's position on the ground can be shown.
  • Backpack Objects Can Be Interactized: You can take out interactized attachments such as a spinning ferris wheel from your backpack.
  • Object Interactization—Collidable Interactization: Set whether interactized objects move when hit by characters, vehicles, bullets, or throwables.
  • Object Interactization—Holding Interactization: Interactized objects can be held and tossed by characters.
  • Coordinate Editing in Free Editing Mode: In Free Editing Mode, you can select an object directly and move, rotate, or resize it by modifying its coordinates.
  • Object Editing Interface: Each object has an editing interface where you can directly edit the object's orientation, scaling, interactization type, or gameplay device parameters.
  • Object Placement and Alignment Improvements: Improved the usability of object snap and area grid, as well as added more object alignment parameters.
  • Auto Snap Option When Re-Editing: In the previous version, objects automatically snapped to their initial position when brought close to it during re-editing. This setting can now be toggled on and off in the editor's parameter settings interface, and is off by default.
  • Object Movement and Rotation Increment: Added movement and rotation increment settings to the editor's parameter settings interface.
  • Free Editing Top View Now Perfectly Flat: In Free Editing Mode, the previous top view editing was not perfectly flat, resulting in inaccurate positioning when placing objects from midair. Now, the editing view has been changed to be perfectly flat.
  • Added temporary resources. They will be replaced with default resources when they expire.

Game Parameters

  • Retaining Shop Tokens: Shop Tokens can now be kept during a match or across matches.
  • Overall Action Management: Added tag customization and filter features. You can create tags for gameplay devices to classify and filter them based on the tags.
  • Armed AI Customization Interface: Attributes for armed AI and defense towers can be customized, including health, attack, and more.
  • Match Log Interface: In-game logs now include the save feature. You can save and view all logs generated during play tests.

Other Updates

  • Group Editing: The team leader can edit the permissions of team members for better team management.
  • Enchantopia Updates: You can invite friends to Enchantopia and edit your team there. Added more interesting gameplay to the stages.
  • Cost Calculation Improvements: Fine-tuned how the system determines the cost of an object.
  • New map templates.

Classic Updates

Livik Map Updates

  • Added 4 new XT Upgrade Crates on top of the existing ones. New firearm upgrades are for the UMP45, SKS, DP-28, and M762. Upgrade Crates for these 4 firearms can be found in Livik or purchased from the Shop for 10 tokens.
    • UMP45 Upgrade: Reduced hip fire bullet spread by 20%.
    • SKS Upgrade: Faster recoil recovery after firing.
    • DP-28 Upgrade: Faster reload speed.
    • M762 Upgrade: Reduced muzzle shake.

Erangel Map Updates

  • Improved the quality of models seen by players at high altitudes, and resolved the issue of buildings disappearing.

Home Updates

The Home System is permanently available, and will be updated each version with interesting gameplay and building cosmetics.

Home Competition

Submission Period: 2024/5/13 at 00:00–2024/6/1 at 8:59 (UTC+0)
Selection Period: 2024/6/1 at 9:00–2024/7/1 at 9:00 (UTC+0)
  • You must reach at least 200 Home Prosperity before you can register for the Home Competition.
  • If players miss the submission period, they can still register during the selection period. After registering, they will be placed in the next round's matchmaking pool.
  • After registering, the selection criteria will be based on the current look of the player's Home.
  • During the selection period, you'll be matched with players of similar Home Prosperity at random every 3 days, for 10 rounds in total.
  • During the face-off, the player that obtains more votes wins. The winner gets to loot points from the loser.
  • Participate in Home Face-Offs to win Home Points and increase your Home Face-Off Level. The higher the Home Face-Off Level, the better the rewards.
  • Home Votes can be obtained by completing missions and by sending Home gifts. Note: Regular Popularity gifts do not grant Home Votes.
  • Home gifts given during each face-off round of the selection period will count towards Home Votes. Home gifts given outside a face-off round will not count towards the number of votes.

Home Events

  • Elegant Ancient Capital Style Event:
    • Available: 2024/5/18 at 2:00 (UTC+0)
    • Purchase Elegant Ancient Capital Home items during the event to get Style Points that can be redeemed for amazing rewards.
  • Ancient Capital Theme Debut Celebration:
    • Available: 2024/5/18 at 00:00 (UTC+0)–2024/5/31 at 23:59 (UTC+0)
    • The Event Center is launching an event to celebrate Elegant Ancient Capital's arrival. Get a Congratulatory Ancient Capital Object Pack when you reach Home Lv. 3, and use it to build an Ancient Capital Style Home in an instant!
    • Visit your Home and upgrade your Home Level to get additional rewards, including Home Coins, Classic Crate Coupons, AG, Ancient Capital themed items, and more.

Home Building Updates

  • Build With Blueprint & Group Editing:
    • Improved the process of building with blueprints. You can now go to More - Save Blueprint to copy and save the draft.
    • The Home Level required to build with blueprints and publish blueprints has been reduced to Lv. 3.
    • You can set the level of the blueprint you want to edit with a tap.
    • The Home Level required to access group editing has been reduced to Lv. 5. You can go to Blueprint Editing - More - Group Editing to invite your friends to build your Home together.
  • Home Resource Updates:
    • The mysterious Elegant Ancient Capital resource pack will be coming soon, along with a surprise event that will reward the Elegant Ancient Capital doorplate and exclusive background music for a limited time.
    • Reach Home Lv. 3 to get a basic Elegant Ancient Capital object pack.

Home Resource & Content Updates

  • Added an access point to the Home Shop in Home. Not only can you browse and edit freely in your Home, you can also enjoy the fun of shopping at any time.
  • Added an access point to the Home Lucky Spin in the Home Shop, so you can more conveniently acquire your favorite items:
    • Upgraded the Lucky Spin event. There are now multiple Lucky Spins available at once, providing you with more diverse shopping options.
    • Elegant Ancient Capital themed items will be available in the Home Lucky Spin.
  • The Elegant Ancient Capital themed items are now available in the Home Shop. Give your Home style a unique twist.
  • Upgraded the Home's lighting effects so players can take more quality photos.
  • Added customizable atmosphere modules that can be adjusted in visit mode.
  • Added privacy settings so you can now control who has access to your Home. Additionally, after reaching Home Lv. 15, you can enable the private channel feature to enjoy private time with your friends.
  • Improved object interactions. Added new facial expression changes after sitting down. Added new interactive objects: Smith Machine, Treadmill, Bathtub.
  • Improved butler actions. Butlers can now turn around and look at the player when they are within a specific range.
  • Home Tree Status Notification: When coins can be collected from the current Home Tree, you will see a notification icon on the Friends tab, the Enter My Home button, and the Home details page.

Metro Royale Updates

Available: 2024/5/15 at 1:00 (UTC+0)
Matchmaking: 2024/5/15 at 2:00 (UTC+0)
  • Collectibles Cabinet Updates: New Chapter 20 Collectibles
  • After obtaining specific Fabled collectibles, they can be displayed in the player's Personal Space.
  • After obtaining specific Fabled collectibles, turn in collectibles to get certain Fabled collectible decorations for the Home.
  • New Honor Rewards: Chapter 20 Elite Avatar, Chapter 20 Hero Avatar Frame, and Chapter 20 Legendary Name Tag. These rewards can be claimed after reaching the corresponding Honor level.
  • New elite PvE enemy in Misty Port and Arctic Base: Strider.
  • New firearms: P90 (Cobra), P90 (Steel Front).
  • Player EXP can now be earned via Metro Royale matches.
  • Companion EXP can be earned by bringing companions to Metro Royale matches.
  • You can now tap to repair all items at once on the loadout page.
  • You can now tap to open multiple inventory gift packs at once.
  • Improved the firearm status at the preparation stage at the start of the match. Firearms will be reloaded by default and set to full auto firing mode.
  • Fixed the issue of incorrect models for some drop items.

Firearm & Vehicle Improvements

  • Firearm Adjustments:
    • P90 damage adjustment.
    • QBZ added to Erangel and Miramar.
    • Skorpion Improvements: Base damage increased from 22 to 24, 15% faster reload time, 20% faster aim down sights time, 30% reduced bullet spread when moving, 10% less sway when shooting.
  • Delayed Explosion Mechanic for Select Vehicles: When a vehicle's health reaches 0, it won't explode right away. Instead, its engine will stop working and it will catch on fire before exploding after 5 seconds. If the vehicle is damaged by an explosion during this period, it will explode immediately. (Some special vehicles aren't affected by this change.)
  • Mobile Shop Vehicle Modification: Added a new item to the Mobile Shop in Erangel, Livik, Miramar, and Sanhok. Use Shop Tokens to purchase its key and turn the Mobile Shop into a drivable vehicle. Items can only be purchased from the Mobile Shop when it's parked. If the vehicle is destroyed, it can no longer be used as a shop.

General Improvements

  • Victory Dance: The A7 Victory Dance comes with an exclusive camera view. Select it from Creation Mode's Victory Dance tab.
  • In-game Mark: When marking supplies with universal mark/quick chat, the quantity of the marked supply will also be shown.
  • Customize Buttons: When customizing controls, you can now quickly copy your Arena Mode layout to use in Classic Mode.
  • Improved Highlights:
    • Companions that you bring into matches will now show in highlights.
    • When recording highlights, all emotes that meet the requirements will be recorded and displayed during playback.
    • Adjusted the retention priority of highlights and the recording conditions of some clips to make it easier to retain them.
    • Teammate numbers now show in highlights.
    • Smoke from exploding grenades now shows in highlights.
  • Auto Pick Up: You can now choose whether to discard or put your previous melee weapon into your backpack after picking up a new one.
  • Sprinting Interrupts Peek Mode: This new setting is enabled by default. When disabled, if you perform a sprint while peeking, it won't interrupt peek mode and you won't start sprinting.
  • New Individual Companion Display: Players can now choose to display their companions, and companions added to the companion system will take turns showing off. This can be done in the Lobby or in a match.
  • Device Update: 120 fps and 90 fps are now available for select devices for you to enjoy a smoother gaming experience.

System Improvements

  • New Collection System: Collect firearms, finishes, and more to get awesome rewards.
  • Themed Event Shop additions: Mecha themed gameplay cosmetics, social items, fun items, and more.
  • Chat Room Feature Updates:
    • Improved the list of featured chat rooms and added filters for chat room type, language, and more.
    • Added Speaking Mode: In regular mode, the host's permission is required to speak. In free mode, any player can freely speak.
    • Added new discussion topics to the chat room. Share your thoughts to increase the interactive atmosphere.
    • Added new ways to send Space Gifts.
    • Added chat room status updates in the Friends List.
  • Birthday Care System: You can now add your birthday to your Social Player Card as part of the new birthday care system. You'll receive surprise care rewards when you log in on your birthday.
  • Synergy: Complete missions such as adding friends and teaming up during the event to get Synergy items and the Underworld Outlaw Set (time-limited).

New Season: Cycle 6 Season 18

Available: 2024/5/18 at 2:00 (UTC+0)–2024/7/15 at 23:59 (UTC+0)
https://preview.redd.it/4125d8rwfd0d1.png?width=1384&format=png&auto=webp&s=a74a0f8340ef11eecf1c7d4c0e9f9104b22ad806
  • Reward updates: New legendary items: C6S18 Glasses, C6S18 Set, C6S18 Mask, C6S18 Cover, C6S18 - DBS
  • Season Token Event Shop Update: C6S18 - Parachute

All-Talent Championship S19

Available: 2024/5/20–2024/7/4 (UTC+0)
  • New Event Shop Rewards: Pop Sensation Set (Epic), Elven Tracker Cover (Legendary), Elven Tracker Set (Legendary), Finest Flavors - QBZ (Epic)
  • New All-Talent Championship S19 Crate Rewards: Pop Sensation Set (Epic), Elven Tracker Cover (Legendary), Elven Tracker Set (Legendary), Finest Flavors - QBZ (Epic), Labyrinth Scale - M24 (Epic), Inked Battleground Parachute (Epic)
  • New First and Second Runner-Up Rewards: Ducky Fighter Set (Legendary), Ducky Fighter Cover (Legendary), Time Traveler - Kar98K (Legendary), Round Parachute (Camo) (Epic), Mr. Bronze Set (Epic)

Popularity Gift Events

New Redemption Shop

  • Popularity Gift Redemption Shop: The Redemption Shop is permanently available and its rewards will be continuously updated. Use tokens earned from Popularity Battles and Team Popularity Battles to redeem rewards.

Popularity Battle Event

Registration Period: 2024/5/14 at 00:00–2024/5/19 at 8:59 (UTC+0)
Battle Period: 2024/5/19 at 9:00–2024/6/18 at 9:00 (UTC+0)
  • Main Updates:
    • New widget tool: Popularity Battle progress can now be synced to your device.
    • New rewards: Popularity Coin, Stickers
    • Lowered the points required to reach each level so obtaining rewards is easier.
  • Rules:
    • Register to participate in the Popularity Battle event. During the battle period, get randomly matched with a powerful opponent every 3 days for a popularity contest. Lasts 10 rounds in total.
    • During the battle period, the Popularity of both competitors will be compared. The one with the highest Popularity wins.
    • The winner can claim some of their opponent's points.
    • Participate in Popularity Battles to win Battle Points and increase Battle Level. The higher the Battle Level, the better the rewards.

Team Popularity Battle Event

Registration Period: 2024/6/17 at 00:00–2024/6/23 at 8:59 (UTC+0)
Battle Period: 2024/6/23 at 9:00–2024/7/9 at 9:30 (UTC+0)
  • Main Content:
    • New widget tool: Popularity Battle progress can now be synced to your device.
    • New reward: Popularity Coin
    • Lowered the points required to reach each level so obtaining rewards is easier.
  • Rules:
    • Matchmaking: There will be a total of 8 rounds. Teams of similar strength will be matched every 2 days. Players within each team will be ranked by Popularity through 1v1 Popularity Battles.
    • Battle: Both sides will compete to see who can gain the most Popularity during this phase.
    • The total score will be determined by the win-loss record of each player on the team. In the event of a tie (2:2), the total Popularity of both teams will be compared.
    • The team with the higher total score will be declared the winner, and can loot Battle Points from the defeated team.
    • If all players within a team have the same score, they can jointly claim the level rewards and ranking rewards.
    • Teams that have registered can have their team leader create an exclusive Nickname Badge for the team, which serves as a symbol of the close bond between team members and gift recipients.
    • Nickname Badges support custom text and are unique.
    • Players can obtain a Nickname Badge by registering a team or by completing gift missions.

Security & Game Environment Improvements

Account Security

  • Players who are conducting video reviews will now show the status, "Reviewing Video", on the Friend List.
  • You can now log in via QR code with accounts linked to certain platforms.
  • Improved account protection system with better account linking and unlinking procedures, and improved security verification and abnormal login reminders. Enhanced in-game notifications for better player awareness on how accounts are stolen to minimize their occurrence.
  • Improved account recovery tool to enhance account retrieval and self-unlinking, to help more account owners in retrieving their accounts.

Security Strategy Improvements

  • Improved cheat detection for X-Ray vision, auto aim, no recoil, speed hacks, modified resource files, and more.
  • Improved violation detection for unfair cooperation and teaming up with cheaters.
  • Improved the in-game detection and countermeasures against account farming, prohibited transactions, escorting, botting and other violations to better regulate in-game behavior and improve players' gaming experience.
  • Improved detection and penalties for inappropriate text, voice messages, avatars, and Home designs to better regulate in-game behavior.
submitted by Errora403 to PUBGMobile [link] [comments]


2024.05.13 13:15 Roeloyo10 Seeking Advice: Running SQL Server on Windows Server in a Virtual Environment

i'm currently in the process of upgrading my ICT infrastructure. One of the key aspects of this upgrade is migrating the local SQLite database to a Windows Server with SQL Server capabilities.
I am using my server to store files on for a small 3d cad drawing business. We use AutoDesk as the provider of the drawing tools. They also offer AutoDesk vault. That only runs on windows server.
However, I'm exploring the possibility of running Windows Server and SQL Server within a virtualized environment, such as a virtual machine (VM). Unfortunately, the router provided by my ISP, offers limited security options, making it difficult to ensure robust protection for our digital assets. I am not planning on buying a new router.
I'd appreciate any insights or recommendations from the community on the following:
  1. Is it feasible to run Windows Server and SQL Server within a virtualized environment, such as a VM, or is that uncommon to do en just install windows server directly on the disk?
  2. If so, what would be a good platform to run it on? I have experience with unraid and i like the VPN feature. That omits opening up extra ports, buying a new router with vpn support etc.
  3. What are the potential security risks associated with running SQL Server, and how can these risks be mitigated?
  4. Are there any specific security measures or best practices I should implement to safeguard the digital assets, considering the limitations of the ISP-provided modem?
Your expertise and advice would be incredibly valuable to me as I navigate through these challenges. Thank you in advance for your assistance!
submitted by Roeloyo10 to sysadmin [link] [comments]


2024.05.13 13:14 Roeloyo10 Seeking Advice: Running SQL Server on Windows Server in a Virtual Environment

I'm currently in the process of upgrading my ICT infrastructure. One of the key aspects of this upgrade is migrating the local SQLite database to a Windows Server with SQL Server capabilities.
I am using my server to store files on for a small 3d cad drawing business. We use AutoDesk as the provider of the drawing tools. They also offer AutoDesk vault. That only runs on windows server.
However, I'm exploring the possibility of running Windows Server and SQL Server within a virtualized environment, such as a virtual machine (VM). Unfortunately, the router provided by my ISP, offers limited security options, making it difficult to ensure robust protection for our digital assets. I am not planning on buying a new router.
I'd appreciate any insights or recommendations from the community on the following:
  1. Is it feasible to run Windows Server and SQL Server within a virtualized environment, such as a VM, given the constraints of the current modem setup?
  2. If so, what would be a good platform to run it on? I have experience with unraid and i like the VPN feature. That omits opening up extra ports, buying a new router with vpn support etc.
  3. What are the potential security risks associated with running SQL Server in a VM, and how can these risks be mitigated?
  4. Are there any specific security measures or best practices I should implement to safeguard the digital assets, considering the limitations of the ISP-provided modem?
Your expertise and advice would be incredibly valuable to me as I navigate through these challenges. Thank you in advance for your assistance!
submitted by Roeloyo10 to homelab [link] [comments]


2024.05.13 09:36 ScaryB4TMAN12 Robbie reyes The All rider Concept

Robbie reyes - Statagist
Primary/Auto attack is a mid ranged attack wielding is his iconic hell chain the tip of the attack deals a tad extra dmg ( dealing dmg builds up heat, incrementally harming himself but increases his healing potency)
Secondary fire you hold down the button the longer you do the further the ability reaches, you fling the chains forward if hitting a teamate itll pass over what built up healing stacks youve gained while tugging them towards you a little
but hitting an enemy will both tug them towards you a tad bit and applies a burn to them ( the burning will also proc the side eefect of the primary fire)
note he wields 2 chains so both an enemy and teamate are hit the opposing effects proc at half strengh
ability 1- target a teammate and the hell charger will come from the depths of hell abruptly giving them a ride ( player who gets affected may have control over the direction it goesmaking it a great escape ability or push ability however its super loud and leaves a flaming trail behind so it can be clear where the players gone)
ability 2- ?? not sure what to have here because i would put penence stare here however id like to think that johnny blaze ghost rider would join the game and he'd have it as an ultimate also another reason why id made the choice to make robbie a statagist and wanted johnny to be a duelist and have them do a combo of sorts maybe something related to either ones vehicals temp swapping their roles and kit.
Ultimate- All Rider- within a certain range hed manifest chains that binds himself to teamates ( to similate the idea hes riding them because the idea is that hes able to "drive" anything even people thats why hes got the all rider title he gains control of those players ground movements or alternatively they cant leave the boundry made by the ultimate) applying the side effect of the primary fire howver with the additional effect that while you obtain healing potency increase they recieve a dmg buff if they are duelist, healing potency buff if they are another statagist and for vanguard something like a increase to health.
submitted by ScaryB4TMAN12 to marvelrivals [link] [comments]


2024.05.12 10:59 Sushil_18 Buttons are not working for first item in cart.

I am trying increase/decrease quantity of books which are there in cart, but somehow these buttons are not working for the first item which is there in cart but working for other items in the cart
Below is my code which is doing this
import { createSlice } from "@reduxjs/toolkit"; const initialState = { items: [], totalItems: 0, totalPrice: 0, }; const cartSlice = createSlice({ name: "Cart", initialState, reducers: { addItem: (state, action) => { const newItem = action.payload; const existingItem = state.items.find((item) => item.id === newItem.id); if (existingItem) { existingItem.quantity += 1; } else { state.items.push({ ...newItem, quantity: 1 }); } state.totalItems += 1; state.totalPrice += newItem.Price; }, removeItem: (state, action) => { const existingItem = state.items.find( (item) => action.payload === item.id ); if (existingItem) { existingItem.quantity--; } else { state.items = state.items.filter((item) => item.id !== existingItem); } state.totalItems -= 1; state.totalPrice -= existingItem.Price; }, }, }); export default cartSlice.reducer; export const cartActions = cartSlice.actions; //This is my redux logic import React from "react"; import { useSelector } from "react-redux"; import { useDispatch } from "react-redux"; import { cartActions } from "../Store/cartSlice"; import Button from "./UI/Button"; const Cart = () => { const books = useSelector((state) => state.cart.items); const totalPrice = useSelector((state) => state.cart.totalPrice); const dispatch = useDispatch(); function handleBookIncrement(book) { dispatch(cartActions.addItem(book)); } function handleBookDecrement(id) { dispatch(cartActions.removeItem(id)); } return ( 

Your Shopping Cart
{books.map((book) => (

{book.Title}
{book.Price * book.quantity}

Quantity:{book.quantity}

))}
); }; export default Cart;
submitted by Sushil_18 to reactjs [link] [comments]


2024.05.12 09:40 Sushil_18 Buttons are not working for the first item in cart, but working for the other than first element

I am trying increase/decrease quantity of books which are there in cart, but somehow these buttons are not working for the first item which is there in cart but working for other items in the cart
Below is my code which is doing this
import React from "react"; import { useSelector } from "react-redux"; import { useDispatch } from "react-redux"; import { cartActions } from "../Store/cartSlice"; import Button from "./UI/Button"; const Cart = () => { const books = useSelector((state) => state.cart.items); const totalPrice = useSelector((state) => state.cart.totalPrice); const dispatch = useDispatch(); function handleBookIncrement(book) { dispatch(cartActions.addItem(book)); } function handleBookDecrement(id) { dispatch(cartActions.removeItem(id)); } return ( 

Your Shopping Cart
{books.map((book) => (

{book.Title}
{book.Price * book.quantity}

Quantity:{book.quantity}

))}
); }; export default Cart;
submitted by Sushil_18 to react [link] [comments]


2024.05.12 01:25 tempmailgenerator Extracting Contact Information with MongoDB Aggregation

Unveiling MongoDB's Data Aggregation Capabilities

MongoDB, a leading NoSQL database, offers a dynamic and flexible schema that can handle a variety of data types and structures. This flexibility is particularly useful when dealing with complex data relationships, such as those found in documents containing user contact information. The ability to join documents and extract specific fields, such as phone numbers and email addresses, is essential in many applications, from customer relationship management systems to social networking platforms. MongoDB's aggregation framework provides a powerful toolset for transforming and combining data from multiple documents, enabling developers to perform complex queries and data manipulation with relative ease.
The aggregation framework in MongoDB operates through a pipeline process, a concept that might seem daunting at first but offers a robust solution for data analysis and manipulation. By leveraging this pipeline, developers can create sequences of operations that process data in stages, allowing for the extraction, filtering, and combination of data from different documents. This approach is not only efficient but also highly customizable, accommodating various data retrieval needs. Understanding how to construct these pipelines to join documents and retrieve contact information is a crucial skill for developers looking to harness MongoDB's full potential for their data management and analysis tasks.
Command Description
$lookup Performs a left outer join to another collection in the same database to filter in documents from the "joined" collection for processing.
$project Used to select some specific fields from a collection.
$match Filters the documents to pass only the documents that match the specified condition(s) to the next pipeline stage.
$unwind Deconstructs an array field from the input documents to output a document for each element.

Deep Dive into MongoDB's Aggregation Framework

MongoDB's aggregation framework is a potent feature that allows for the execution of operations on multiple documents and returns a computed result. This framework is designed to process data and perform a wide range of operations, such as filtering, grouping, and sorting, which are crucial for data analysis and reporting. The aggregation pipeline, a core concept within this framework, enables the transformation of data in a multi-stage process, where each stage transforms the data in some way before passing it to the next stage. This method provides a granular level of control over data manipulation, making it possible to refine and consolidate data from large datasets efficiently.
One of the primary strengths of MongoDB's aggregation framework is its ability to perform complex queries and joins across multiple documents and collections. This is particularly useful in scenarios where relational data needs to be aggregated across different documents that are not naturally linked. The $lookup stage, for example, allows for the joining of data from two collections much like SQL's JOIN operation, enabling developers to combine and analyze data from disparate sources within a single query. Furthermore, the framework's flexibility in handling different data types and structures, along with its efficient data processing capabilities, makes it an invaluable tool for developers and analysts working with large and complex datasets.

Joining Collections to Retrieve User Contacts

Using MongoDB Query Language
db.users.aggregate([ { $lookup: { from: "contacts", localField: "contactId", foreignField: "_id", as: "userContacts" } }, { $unwind: "$userContacts" }, { $project: { _id: 0, name: 1, "userContacts.phone": 1, "userContacts.email": 1 } } ]) 

Exploring MongoDB Aggregation for Data Analysis

MongoDB's aggregation framework is an essential tool for developers and database administrators looking to perform complex data analysis and manipulation directly within the database. This powerful framework allows for the execution of multi-stage pipelines, which can filter, transform, and aggregate data in sophisticated ways. The flexibility and efficiency of MongoDB's aggregation operations make it possible to handle a vast array of data processing tasks, from simple queries to complex joins and data transformations. The ability to pipeline operations means that data can be processed in stages, allowing for incremental transformation and analysis. This is particularly useful in scenarios involving large datasets where efficiency and performance are critical.
Moreover, MongoDB's aggregation commands, such as $match, $group, $sort, and $lookup, offer SQL-like capabilities that are not traditionally available in NoSQL databases. This blend of flexibility and power enables developers to perform intricate data analysis tasks with relative ease. For example, the $lookup command allows for the joining of documents from separate collections, mimicking the JOIN operation in relational databases. This feature is invaluable for applications requiring complex data relationships and aggregation across multiple collections. Additionally, the aggregation framework's ability to output results to a new collection or directly to the client makes it a versatile tool for data processing and reporting.

Frequently Asked Questions About MongoDB Aggregation

  1. Question: What is MongoDB's aggregation framework?
  2. Answer: It's a MongoDB feature that processes data records and returns computed results, allowing for data grouping, filtering, and transformation.
  3. Question: Can MongoDB perform SQL-like joins?
  4. Answer: Yes, using the $lookup operator, MongoDB can perform operations similar to SQL joins, combining data from multiple collections.
  5. Question: What are the key stages of MongoDB's aggregation pipeline?
  6. Answer: Key stages include $match, $group, $project, $sort, and $lookup, each serving different data processing purposes.
  7. Question: How does the $group stage work in MongoDB?
  8. Answer: The $group stage groups input documents by a specified identifier expression and applies accumulators to each group.
  9. Question: Can aggregation operations output results to a collection?
  10. Answer: Yes, MongoDB allows aggregation results to be outputted to a collection, facilitating further analysis or reporting.
  11. Question: How does MongoDB handle data transformation in the aggregation pipeline?
  12. Answer: Data is transformed through various stages in the pipeline, allowing for incremental processing and transformation of data.
  13. Question: Is it possible to perform real-time data analysis with MongoDB's aggregation framework?
  14. Answer: Yes, MongoDB supports real-time data analysis with its efficient aggregation operations, suitable for live data processing.
  15. Question: How do $match and $project stages differ?
  16. Answer: $match filters documents based on a condition, while $project selects or excludes fields from the resulting documents.
  17. Question: Can the aggregation framework handle complex data structures?
  18. Answer: Yes, it's designed to work with complex data structures, offering operations like $unwind for array fields.

Wrapping Up MongoDB's Aggregation Capabilities

MongoDB's aggregation framework stands as a cornerstone for developers requiring sophisticated data analysis and manipulation directly within the database. Its array of operators and stages, from $lookup for joining collections to $group for aggregating data, provides a SQL-like experience in a NoSQL environment. This flexibility allows for a broad range of applications, from real-time analytics to complex data transformation tasks. The framework's efficiency and versatility in processing large datasets make it an invaluable tool in the developer's toolkit. Moreover, MongoDB's approach to data aggregation exemplifies the database's overall strengths in scalability, performance, and flexibility, reinforcing its position as a leading choice for modern application development. Embracing MongoDB's aggregation framework empowers developers to unlock deeper insights into their data, driving better decision-making and fostering innovation in data-driven applications.
https://www.tempmail.us.com/en/mongodb/extracting-contact-information-with-mongodb-aggregation
submitted by tempmailgenerator to MailDevNetwork [link] [comments]


2024.05.11 21:01 The_Meridian_ Newer people: CLIP SKIP...mess with it!

You may've seen the term in passing, didn't think much of it, seemed like maybe a nitpicky setting that is only something you bother with if you're using LORAs.
Try this: Right click on your "Load Checkpoint" and there's a feature where you can add a clip skip node. It will keep your clips connected and is also a great way to splice into an out of control rig to insert other pre-clip things.
Now convert the input to widget and connect that to a primitive. You'll now have a clip skip you can randomize, increment, or decrement.
-1 basically means "no clip skip" and if you want to know the theory with it and all the academia, I'm not your guy.
But Set it to -24 (max) and set the control to increment and now with everything else ready auto queue and watch the results.
I'd start with your CFG at 8 and see what happens, but 5 tends to be better with SDXL and 10 Tends to be overkill, but more on this in a bit...
When you find a clip skip that blows your mind, change to fixed and then now increment or decrement your CFG to find the sweet spot between detail and whatever level of realism/color etc you want.
Let me know if you try this out and how you like it.
submitted by The_Meridian_ to comfyui [link] [comments]


2024.05.10 21:21 Evening-Nobody-7674 Look What Daddy Got! KitchenAid Super Automatic KES8558PL

Look What Daddy Got! KitchenAid Super Automatic KES8558PL
KitchenAid KF8 Fully Automatic Review
Before you judge me, this in the back at work. I hide them here so I don't get called crazy from my current wife. I currently have a Jura Giga 10, and Miele CM5300. I have had for 30-60 days Delonghi Dinama and Dinamica Plus, Miele CM6330 (only machine I returned after two week), Jura Giga 6, Saco Xelsis (SM8 Eu Version), Philips 3200, I think that's it. I drink non milk dark roasts primarily so that is where my reviews come from. I am looking for the largest dose size at the finest grind, so I can get a 3-4oz strong (flavorful) lungo and a newanced espresso. I test with the Peet's Espresso Forte.
Before we get into it. This machine is made by EugsteFrismag who is also the OEM for Jura, Miele and a number of Europe brands. I don't have experience with the other EU brands so I can't comment on how close they are to Miele, I do know they share the same Miele brew unit. I will update this as I go.
Initial Impressions-
The Kitchenaid KF8 KES8558PL (KA) seems to be a improved a mash up between the Miele CM53 series and the larger CM61/CM63 Series. Size wise, it's a big boy compared to the CM53. It's only about 1" longer and wider but it does look heavy from the top. It is heavy, about 40lbs. KA seems to have improved on the CM53's short comings with the small water tank and drip tray. Even the larger water tank would be a big improvement.
  • It has back back wheels so you can roll it forward and back easy.
  • The water tank is larger and the drip try is too.
  • The KA is SUPER QUITE, I mean super, no BSing around. I start it and expect a jolt of noise, nothing like that. It is like a modern dishwasher quite. More quite than my giga 10 too.
  • The case and surround are all premium finishes, thickness and quality you can feel. Even the hopper eject button is well made. It looks like it would be cheap, but it is well made.
  • Easy to customize drinks, as customizable as Jura.
  • Love the start button you have to hit so you don;'t accidently made a drink
  • 14-15g puck with fine grind.
Initial Negative:
  • I am surprised it has no wifi, it was NOT advertised with wifi but for the fit, finish and price I feel like it is hidden inside somewhere. There is a software version listed which is interesting.
  • I am getting a fill bean error with Peets Espresso Forte (a bit concerning considering no wifi to fix it).
  • The screen it kinda low budget, low resolution for no reason.. The Saeco Xelesis Suprema Screen (EU model) is gorgeous.
  • The KA has a large screen but it is poorly utilized, allowing for a lot of wasted space. It seems like the Kitchenaid KF7 3.5" KA model uses the same firmware so all they did was scale up the UI for the larger 5" screen of this KA model. Hence the wasted real estate. Point being, why did I spend the extra for the 5" Screen?
  • No Prewet setting also no Extra Hot Temp (the Miele's had both).
  • The thick polished drip tray cover is going to get scratch up easy.
  • No settings for the brew lights, the top of the dispenser has a LED in it. It lights up while brewing. I feel like Kitchenaid did this for the moms as a wow factor.
  • The dual spout on the drip try is a bit of a pain in the ass. It is easy for the water volume to overwhelm the left corner spout, at the sametime the water starts to pour out of the center spout. It's easy to spill or make a mess if dumping into a small prep sink.
  • The drip tray is larger in volume than the Miele CM5 but they didn't add any baffling, so when it is full it is loosely contained in the drip try, you can't move it quick, like I can on a Giga 10. The large water tank and drop tray is nice to have, you just need to get a feel to not wait for the red drip tray indicator float to be all the way up.
  • Miele has better branding with more appeal to me, its certainly a more perceived premium name than KA. KA seems to have went for another demographic completely and I am not it. Probably the same demo who buys the stand mixers and other gadgets. I actually think this detracts from the machine for me, but may open the machine up to a new demo who maybe never have considered a super auto. Other than the Xelsis Suprema, all the other user interfaces can be complex, more difficult or less than intuitive for no reason.
It's Friday and sunny outside. I'll do more testing next week assuming I don't put this in my car.
https://preview.redd.it/jzv8o6z7mnzc1.jpg?width=3784&format=pjpg&auto=webp&s=d5604995d9252798b2be22d75659fa479998f441
Update: 5/13/04 - It makes great coffee. I liked the Cm5300, it made excellent coffee and had it as a great buy if you got it sub $900 and were ok with the small water tank. The KA makes the same excellent coffee as the Cm53 while improving on the Miele limitations.
Dose size: I have confirmed the Kitchenaid machines have a 15g coffee dose like Miele. I brewed a cup, thoroughly dried the pick out. The bin weighed 115g with coffee, 100g without coffee in the dredge bin. The dredge bin is 5g more than the bin of my cm5300, but the shape and style is exactly the same. I ran this test twice.
I'm not going to open it up, but whatever the manufacturing agreement is between EugsteFrismag and kitchenaid, it seems like EugsteFrismag owns a base platform a manufacturer can customize form there (like any white label manufacturer). The Kitchenaid KF series is a big improvement over the Miele in terms of overall usability, and user experience. The coffee is still the same excellent coffee as Miele. Other than the Kitchenaid Brand name being a little not cool (IMHO) you would be foolish to get overpriced Miele at this point. Miele has been having sales, and are due for a machine refresh so who knows. But as of now, effectively speaking, the Kitchenaid's are a updated Miele's.
Updates from my Miele Complains that I haven't mentioned above already:
  • 15g dose size with fine grind makes excellent coffee.
  • It is legit quite. I know I said this above, but it is worth another mention.
  • Its still a large body machine, but the way KA used the CM53 face design, its more laid back looking than the CM6 series your cup gets inserted into. The CM6/7 (and past gens) gave me a dyson hand dryer feel. I enjoy a minimalist design, but there is a minimalistic design and there is having a huge brick sitting there.
  • The UI is what a UI should be even if the KA is overly simplified. Everything is laid and is easy to use, especially for someone who has never used a SA before. No one can walk up to my jura to make a drink.
    • The best way to explain it is if Miele was Microsoft D.O.S., and Kitchenaid rolled up and installed windows. There is a UI vs text interface. I didn't mind the Miele menu system, but the KA screen opens up easy access to everything. It is less button pushing if your drink was not a pre-programed front button on a Miele.
    • Saving drinks and adding to a profile is easy and offered at the end of each drink.
    • Love the start button.
  • This bad boy has a quick steam purge like the Saeco Xelsis. Haven't tested yet.
  • I like the filter option- I am assuming there is a antiscale media in it, but I haven't confirmed yet.
  • Hoppers - I appreciate the ability to remove the hopper to dump out, swap or clean it. Its a convenience every machine should have. This was a reason why i kept the giga 10.
  • I still get the insert bean hopper error message after the machine grinds for a bit BUT the plus side is most machines (I think all of them) will abort the brew cycle and dump the coffee out. The KA will keep grinding and will then brew if you push continue
  • The maintenance menu is easy to access and self explanatory. There seems to be a bean purge option which I assume is for when you swap out the hopper (or beans)
    • I tried to get the machine to run without the hopper to test the bean purge feature and HOLY SENSORS. Wherever you see a circle or arrow there is either a button or slide switch that engages with the hopper. On top of that, when you insert the hopper, you need to turn a knob to lock it in place. When you do that there is a sensor in the black collars that go around the grinder opening. I haven't been able to trick the machine that the hopper is in place. If someone knows how or has access to a service manual I'd love to try it.
  • It is hard to give it praise when in reality Miele UI or lack there of was really behind the times anyway. Especially considering their price point. Style aside, Miele was functional, and cleaner than a Delonghi UI but on a CM6 or above, it was like why. Couple that with that giante waste of space and the wasteful water consumption, it was just a turn off.
  • I have not tested the startup/shut down or milk rinses yet or steam purge. I need to bring a measuring cup to work.
  • The exterior build quality is exceptional. It's not clad in metal which is ok, but you can feel the thickness and heft of the side door, probably for insulation, but it is far above other brands including Jura at least my giga 10.
Negatives you can assign your own value to:
  • Fill coffee bean error :( even after machine reset. I'm not sure where the sensor is, but I think it might be a hardware/firmware issue. Philips had this issue a few years back with their eye and dark roast.
  • UI - KA really did a good job listening to user complains from other machines it shows, but I almost feel like they need 1 more week to make the UI perfect.
    • No Screensaver- This thing just glows all the time on full backlight so I can't see how this low quality screen wouldn't get burn in.
    • I can't seem to rearrange or "filter"milk or non milk drink order on the home page. As of right now it seems you will have to scroll to get to your favorite drink. Lungo is a few drinks over. No wifi so no way to update this.
      • Delonghi and jura allows you to move things around. I can't remember if Saeco did, I don't know about Gaggia.
  • Odd Volume Increments and Limitations
    • On the Americano, I am not allowed to go lower than 2.7 oz of water which is a bummer as I had the same issue with the Philips 3200. You can stop it manually. Still why do they do this? A half out less would be perfect for me. It is still delicious. A work around maybe adding a shot if that is possible.
    • The volume increments will go by .2oz, sometimes like in the Americano it goes by .3 ounce.
  • No prewet function as on the Miele.
    • Perhaps this was by design for simplification. You can fake it. There is a sensor on the chute bipass door. When the door opens, everything pauses. When you close it, it continues to brew. I was playing with it like a kid, it was fun, and actually nice the machine wouldn't throw a temper tantrum and abort the drink.
  • Hopper Swapping - Since these drinks are espresso based, the portion sizes are obviously smaller. My wife drinks 4oz coffees, I drink a lungo in there, we get a new drink one after about 15-20min.
    • I can't see people swapping out a hopper every 15-20 min as much as I appreciate the removable hopper. You might at first, but eventually someone is going to say F it.
    • The extra hopper you can order and comes with a lid. It isn't an airtight solution. Might be better off dumping beans into a airscape, or putting the whole hopper into a gallon size ziploc bag.
  • Standby mode seems to shut the machine off completely including a rinse. I can't seem to get it out of standby mode.
  • No Cold Extraction option - IDK about this one.
Opinion/Other Thoughts:
I dono if this makes me sexist or not, I don't mean to be, but being a guy, I think the UI is a little girly. It is warm white light glow, welcoming milk drinks. It might be the low resolution screen, but everything just seems softer. You can adjust the accent colors in which is fine, but it is just super simple to use. I feel like it is missing something even though it. I don't need to be careful to accidentally make a drink. The Xelesis Suprema had a black background, sharp screen, it felt a little more "machine" or at least sports car. Jura is absolutely a machine. Delonghi's UI is a bit of a italian hot mess of fucking with it until you understand how it works. Miele of course was utilitarian German. This kitchenaid feels like a Kitchenaid, there is a absence of technical feel. There was no learning curve, or "break in". It makes excellent coffee, and I know it will appeal to more masses and probably offer them a very low return rate. It's big, but like the cm53 "little buddy" it's unassuming. It might as well be a fucking blender or something. Honestly, KA just buried Miele, buried everyone really. The only reason why someone wouldn't buy the KF7 from where I sit now is if they prefer a machine with a onboard milk carafe. Even at that, you could use a Jura Cool Control milk cooler with this too and not need a carafe.
EugsteFrismag seems to have the life, they are selling pickaxes and shovels in the super automatic gold rush. There is no reason to buy a Miele unless you just want their badge but with the feature set the KA has it would be foolish. From everything that I see, KA seems to have done an excellent job listening to the SA customers, right down to the stupid rollers on the back to slide the machine back and forth. I put my machines on felt pads.
Is it possible KA made it too easy to use? Is that even a complaint? I jumped down this rabbit hole because I like to find out where the value lies with machines that are typically cloaked with smoke and mirrors and I like to stick it to the man per say as these machines are expensive for no reason. If you can get a KF7 with a 15% Cash back deal, it is on par with Europe pricing, and a stronger value. Excellent coffee machine really. What more do we want here? If you need a coffee machine, you get this one, especially with a few software tweaks I hope they make. I could get the KF7 over Jura E- Series hands down, honestly if KA keeps this pricing, they might force Jura to reevaluate their North American pricing structure. I've said Miele made better coffee than Jura. Jura uses aerators that can get old. This KA is for all purposes is a Miele, this KA makes better coffee than Jura. There I said it.
Companies like Terra Kaffe, Smeg, GE, (dare I say Powers Coffee since that nonsense of the other week) and all the generic no name SA's on Amazon trying to bust in the SA market in by private labeling machines for the sake of profits and removing value, taking advantage of people really. Kichenaid of all firms, known for private labeling too, pulls up like Macklemore rolling into a club and apparently kills it. I don't know how they will address the software glitches, but I am impressed that KitchenAid (Whirlpool Corp.) pulled this rabbit out of a hat out of nowhere. I'm shocked really, I would not equate Whirlpool as a innovator nor would I think they would have 1) the corporate culture needed or 2) the departamental leeway to take a huge fucking leap really and make it happen.
If KA came out with a version that had a steam wand, forget the Dinamica. Forget the Accademia too. No amount of wifi magic or flow control valve will help their 11g max dose against this. What about Jura? Honestly speaking, they make good coffee but they are screwing people. I've had a love hate relationship with their cold extraction, sometimes I think its nice, sometimes I think its under extracted. It's a little weird, a little pleasant, and different. It is smoother, but I wouldn't call it coffee.
Update 5/17/24: I don't understand reddit's process for uploading pics. When I upload more, the old ones delete.
Ran a milk first Cappuccino today with Almond milk since u/dbv2 was interested in the milk alternative. It was good. I find the milk alternatives in any super auto dissipates pretty quick, so it is hard for me to review, but it was dense microfoam. You are able to select dairy milk or plant based, I can't see how the machine would do anything different for either. The KA and Miele share the same hose terminal. Someone really needs to get the KF7 or at least check a parts diagram to we can see if the Capture or whatever they call the frother is even different.
https://preview.redd.it/i6adowgh811d1.jpg?width=1705&format=pjpg&auto=webp&s=cbebc379599da8cd764bdbea944977ffe04c107a
https://preview.redd.it/vh4ixugh811d1.jpg?width=2248&format=pjpg&auto=webp&s=ac805ca27dd88694e1b4e80b7dde1e0d3e6926c8
https://preview.redd.it/a8sd4vgh811d1.jpg?width=3024&format=pjpg&auto=webp&s=409b7ec190e0f3006c51c1182a081fb145862bac
https://preview.redd.it/ucabzvgh811d1.jpg?width=2105&format=pjpg&auto=webp&s=149d6e1944f279ffc4581d18c537bdccd2912b62
submitted by Evening-Nobody-7674 to superautomatic [link] [comments]


2024.05.10 12:07 NimbleThor 6 Quick Tl;Dr Android Game Reviews / Recommendations (Episode 303) [PREMIUM GAMES-edition]

Friday is here! And as usual, I'm back with my weekly game recommendations based on the most interesting games I played and that were covered on MiniReview this week! :) I hope you'll enjoy some of them.
Support these posts (and YouTube content + development of MiniReview) on Patreon: https://www.patreon.com/NimbleThor <3
This episode includes a fantastic deck-building rogulike game, a fun casual puzzle game that recently returned from the dead, a neat RPG Dungeon Crawler, a paid incremental simulation game, a light-hearted Metroidvania puzzle adventure game, and a fun deck-building dungeon crawler.
New to these posts? Check out the first one from 303 weeks ago here.

Let's get to the games:

Wildfrost [Game Size: 809 MB] (Free Trial)

Genre: Deck-Building / Roguelike - Offline
Orientation: Landscape
Required Attention: Full
tl;dr review by AlexSem:
Wildfrost is a high-quality roguelike deck-builder that expands on the usual formula of the genre with interesting new mechanics like card timers, and the ability to reposition units on the field.
The game has us participate in a series of battles and random events to ultimately defeat the powerful boss waiting at the end. Starting with a deck of weak cards, we gradually improve and reorganize them to prepare for the dangerous challenges awaiting us.
The battlefield consists of two rows, each with six pre-defined positions for troops: we can place ours on the left side, while enemy troops spawn on the right side.
Each unit on the field has a counter that is reduced every time we play a card from our hand. When it reaches zero, the unit attacks the closest enemy in its row, and the counter restarts. Our goal is to dispose of all the opponents while keeping our leader alive.
Interestingly, we can freely reposition our troops on the field, or recall them back to our deck for healing. Meanwhile, spell cards are used to support our troops, damage enemies, and trigger various effects - but playing them reduces the unit counters, so we must use them sparingly.
Contrary to many other deck builders, mindlessly playing cards from our hand almost never works in Wildfrost. To succeed, we must calculate our every move and carefully plan around the build we’re aiming for.
I especially liked the Charm mechanic, which lets us attach charms to our cards that trigger special effects when the card is played. Used correctly, these charms become a real game changer.
Wildfrost is free to try, with a single $9.99 iAP unlocking the full game.
If you are looking for a really complex deck builder where every choice matters, I think you’ll love the amount of strategy Wildfrost offers.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: Wildfrost

Super Monsters Ate My Condo [Total Game Size: 222 MB] (Free Trial)

Genre: Puzzle / Arcade - Offline
Orientation: Portrait
Required Attention: Full
tl;dr review by NimbleThor:
Super Monsters Ate My Condo is a unique fun arcade game where we feed floors of an apartment building to hungry monsters to earn as many points as possible – all while ensuring our high-rise building doesn’t collapse.
The core gameplay consists of rectangular condos of different colors constantly falling from the top of the screen, stacking up to create a skyscraper-like tower. On each side of the building are 2 of our monsters. It’s our objective to swipe left and right to feed the colored condos to the monster of the same color.
If we swipe too slowly, the new condos falling from the top will land unevenly, which may lead our tower to lose its balance and fall over. If this happens, it’s game over. And to make matters worse, if we feed the wrong condos to a monster, it eventually starts stomping the ground in frustration, which creates devastating vibrations.
Stacking three condos of the same color directly on top of each other turns them into a single special condo that can be used on any monster to activate their respective special power. Stacking three condos is also how we swap between our four total monsters.
Each level is randomly generated and the goal is to survive for 2 minutes, which makes the game perfect for quick, casual play.
At the home screen, we’re constantly shown 3 goals that get replaced as soon as they’re completed. The only other sense of progression comes from unlocking cosmetics for our monsters.
The gameplay is chaotically fun. I only wish there was an endless mode.
Super Monsters Ate My Condo is free to try, with a $2.99 iAP unlocking the full game.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: Super Monsters Ate My Condo

Dungeons of Aether [Game Size: 198 MB] ($4.99)

Genre: RPG / Dungeon Crawler - Offline
Orientation: Landscape
Required Attention: Some
tl;dr review by AlexSem:
Dungeons of Aether is a fun story-driven dungeon crawler where we use a unique "dice drafting" gameplay mechanic to win a series of one-on-one battles against numerous deadly enemies.
Playing as a motley crew of four colorful characters trying to save a troubled town from a greedy mining corporation and a powerful ancient evil, we explore lots of pre-designed dungeons to fight enemies, collect loot, solve light puzzles, and uncover bits of lore.
The turn-based battles span multiple rounds. Each round, we roll six dice of different colors and then take turns drafting them with our opponent to increase our Attack, Defense, Speed, and Accuracy stats.
Accuracy defines the number of moves we can choose from. The offensive moves deal damage only if our Attack value surpasses the enemy’s Defense, while support moves let us stack the odds for the next rounds. Speed defines the turn order, and we can set up clever traps and ruses if we manage to move first. For example, making the opponent's otherwise perfect attack fail because we suddenly have increased defense.
Unfortunately, the enemies’ movements are so predictable that some attacks work better than others - up to the point where mindlessly spamming the same move in every fight works wonders. Fortunately, we still often end up in situations that require strategic thinking and clever use of our equipment and consumable items.
Dungeons of Aether is a $4.99 premium game without ads or iAPs.
The game offers a memorable journey full of funny character interactions, great humor, drama, intrigue, unexpected plot twists, and all the other attributes of a great tale. And a separate mode with randomly generated dungeons ensures great replayability after finishing the main story.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: Dungeons of Aether

WizUp! [Game Size: 216 MB] ($4.99)

Genre: Incremental / Simulation - Offline
Orientation: Portrait
Required Attention: Little (semi-idle)
tl;dr review by JBMessin:
WizUp! is a fun incremental idle RPG with pixel art wizards, a great soundtrack, and tons of resources and upgrades.
The core gameplay loop consists of our wizard auto-battling waves of enemies until defeated. It then heals up and starts from the first wave again. Each enemy drops souls, gold, and XP, which we use to gradually grow stronger through an insane number of upgrades.
While our wizard does the fighting, we buy magical items and upgrades that get placed on a large inventory-like board split into grids.
There truly are a staggering number of resources to manage in WizUp!, which would quickly get confusing were it not for the fact that we can freely drag and drop resources, items, and upgrades around our board.
So for example, XP gives us the “Orbs of Power” resource, and whatever upgrades require this resource can be placed next to it on the board so it’s all quick to find when the board soon gets crazily crowded.
What I love the most about WizUp! are its arcade vibes, which are rare in an incremental game. In fact, as my numbers went up and upgrades became available, I found myself tapping my finger to the beat of the game’s hype-pumping soundtrack. Once I got into the flow of the many mechanics and resources, I really started enjoying what the game had to offer.
There are also several neat customization options, like the ability to change how numbers are shown, and my favorite QoL feature: the ability to completely pause the game.
WizUp! is a $4.99 premium game. It’s definitely worth checking out if you enjoy the wizard theme and premium incremental games.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: WizUp!

Red's Kingdom (Game Size: 325 MB] ($2.99)

Genre: Adventure / Puzzle - Offline
Orientation: Landscape
Required Attention: Full
tl;dr review by AlexSem:
Red's Kingdom is a light-hearted "Metroidvania" puzzle adventure about a young squirrel on a perilous journey to retrieve its stolen stash of nuts – oh, and defeat the evil king responsible for all the troubles that have plagued the kingdom.
The gameplay involves traversing colorful locations to collect nuts and unlocking passages to the next areas. Swiping up, down, left, or right makes our squirrel roll in that direction until it hits an obstacle. So in each area, we must figure our the correct sequence of moves that let us reach the exit while avoiding traps and dead ends.
As we progress, we encounter new obstacles, such as ramps, crumbling floors, lava pits, button-controlled gates, and even enemy goons who may harm us and force us to restart the level. We also get to meet new NPCs who help us on our journey in one way or another.
The game’s semi-open world lets us revisit finished areas to search for secrets and hidden treasures. In fact, I did that quite a lot, as new powers and quest items allow us to gain access to previously locked-off places.
Despite being mechanically simple, I was attracted by the game’s cute art style, high-quality animations, neat sound effects, and silly story full of goofy characters that are interesting to follow.
Red's Kingdom is a $2.99 premium game without ads or iAPs.
It's one of those games that play perfectly on mobile, so if you enjoy non-complex yet challenging puzzle adventures, you can't go wrong with this one.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: Red's Kingdom

Lost For Swords (Game Size: 100 MB] (Free)

Genre: Deck-Building / Dungeon Crawler - Offline
Orientation: Portrait
Required Attention: Some
tl;dr review by AlexSem:
Lost For Swords is a grid-based deck-building dungeon crawler where we fight progressively harder enemies using a deck of cards that we gradually improve by creating great synergies.
The game features multiple towers of varying difficulty, each of which consists of several floors that we ascend to face the powerful boss at the top. At our disposal is a deck of equipment and skill cards that gets randomly shuffled and then laid on a square grid alongside some cards from the enemy’s deck. Our character is also represented as a card on this grid.
Turn by turn, we move across the grid to reveal cards, pick weapons and loot, trigger spells and environmental objects, and engage in combat with enemies who use every opportunity to hit us back. But since weapons have limited durability, we must plan how to make the most out of them before they break.
When we exit a floor, all surviving enemies get shuffled back into the deck. They will reappear in later floors until we completely defeat them, and only then do we get access to the final boss.
The permanent progression comes in the form of unlocking new characters, new starting decks, and new cards that we may encounter during a run.
The game seems deceptively casual at first, but once we start mindlessly tapping cards, we quickly realize the fallacy of this approach. While the first floors are easy, the difficulty gradually ramps up, requiring us to exercise caution and calculate our every move. Hardcore strategy fans will definitely appreciate this.
The developer is very actively publishing new updates, so I think the game will only become more polished and diverse as time goes by.
Lost For Swords is completely free, without ads or iAPs, making it an easy recommendation for anyone who likes deck-builders.
Check it out on Google Play: Here
Check it out on MiniReview (website version):: Lost for Swords
NEW: Sort + filter reviews and games I've played (and more) in my app MiniReview: https://play.google.com/store/apps/details?id=minireview.best.android.games.reviews
Special thanks to the Patreon Producers Wrecking Golf, "marquisdan", "Lost Vault", "Farm RPG", and "Mohaimen" who help make these posts possible through their Patreon support <3
Episode 281 Episode 282 Episode 283 Episode 284 Episode 285 Episode 286 Episode 287 Episode 288 Episode 289 Episode 290 Episode 291 Episode 292 Episode 293 Episode 294 Episode 295 Episode 296 Episode 297 Episode 298 Episode 299 Episode 300 Episode 301 Episode 302
submitted by NimbleThor to AndroidGaming [link] [comments]


2024.05.09 20:26 Alive_Ear_6973 Undervolting in Bios AN515-57

Undervolting in Bios AN515-57
guys. is this the section for undervolting?
submitted by Alive_Ear_6973 to AcerNitro [link] [comments]


2024.05.09 18:51 firstandahalfbase DRF - How should I set a related field when I only have a UUID and not the PK?

I recently introduced a UUIDField into a mode in order to obscure the internal ID in client-side data (e.g., URLs). After doing some reading, it seemed like it wasn't uncommon to keep django's auto-incrementing integer primary keys and use those for foreign keys internally, and to use the UUIDField as the public client identifier only. This made sense to me and was pretty simple to do. My question now is what is the approach for adding a related object where the client only has the UUID and not the PK?
class Book(Model): title = CharField() author = ForeignKey(Author) class Author(Model): # default id field still present uuid = UUIDField(default=uuid.uuid4) name = CharField() 
Using the default ModelSerializers and ModelViewSets, if I wanted to create a new Book for a given Author, normally, the payload from the client would look like this:
const author = { id: 1, uuid: , name: 'DJ Ango', } const newBook = { title: 'My Book', author: , }author.id 
The problem is the point of using the UUID was to obscure the database ID. So a serializer that looks like this:
class AuthorSerializer(ModelSerializer): class Meta: model = Author exclude = ['id'] 
Gives me frontend data that looks like this:
const author = { uuid: , name: 'DJ Ango', } // and I want to POST this: const newBook = { title: 'My Book', author: author.uuid, } 
And now I can no longer use DRF's ModelSerializer without modification to set the foreign key on Book.
It seems like options are:
  1. Update BookSerializer to handle receiving a UUID for the author field. My attempt at doing this in a non-invasive way ended up pretty messy.
  2. Update BookSerializer (and maybe BookViewSet) to handle receiving a UUID for the author field by messing with a bunch of DRF internals. This seems annoying, and risky.
  3. Create new Books from the AuthorViewSet instead. This kind of defeats the purpose of DRF, but it is minimally invasive, and pretty trivial to do.
  4. Expose the ID field to the client after all and use it
Anyone have experience with this and ideas for solving it cleanly?
Edit: formatting
Edit: Got a solution thanks to u/cauethenorio. Also, now that I know to google SlugRelatedField, I see that this solution has been posted all over the place. It's just knowing how to search for it...
I'll add that I needed a couple additional tweaks to the field to make it work properly.
class BookSerializer(ModelSerializer): author = AuthorRelatedField(slug_field='uuid') class Meta: model = Book class AuthorRelatedField(SlugRelatedField): def to_representation(self, obj): # need to cast this as a str or else it returns as a UUID object # which is probably fine, but in my tests, I expected it to be a string return str(super().to_representation(obj)) def get_queryset(self): # if you don't need additional filtering, just set it in the Serializer: # AuthorRelatedField(slug_field='uuid', queryset=Author.objects.all()) qs = Author.objects.all() request = self.context.get('request') # optionally filter the queryset here, using request context return qs 
submitted by firstandahalfbase to django [link] [comments]


http://swiebodzin.info