Skip to content

Latest commit

 

History

History
756 lines (571 loc) · 41.8 KB

2021-02-16.md

File metadata and controls

756 lines (571 loc) · 41.8 KB

< 2021-02-16 >

2,823,021 events, 1,395,609 push events, 2,212,731 commit messages, 173,217,273 characters

Tuesday 2021-02-16 00:35:41 by Jean-Paul R. Soucy

New data: 2021-02-15: See data notes.

Revise historical data: cases (AB, MB, ON, SK).

Some provinces/public health units (ON) did not report today due to Family Day.

Note regarding deaths added in QC today: “16 new deaths, but the total of deaths amounts to 10,229 due to the withdrawal of 1 death not attributable to COVID-19: 5 deaths in the last 24 hours, 8 deaths between February 8 and February 13, 3 deaths before February 8.” We report deaths such that our cumulative regional totals match today’s values. This sometimes results in extra deaths with today’s date when older deaths are removed.

Recent changes:

2021-01-27: Due to the limit on file sizes in GitHub, we implemented some changes to the datasets today, mostly impacting individual-level data (cases and mortality). Changes below:

  1. Individual-level data (cases.csv and mortality.csv) have been moved to a new directory in the root directory entitled “individual_level”. These files have been split by calendar year and named as follows: cases_2020.csv, cases_2021.csv, mortality_2020.csv, mortality_2021.csv. The directories “other/cases_extra” and “other/mortality_extra” have been moved into the “individual_level” directory.
  2. Redundant datasets have been removed from the root directory. These files include: recovered_cumulative.csv, testing_cumulative.csv, vaccine_administration_cumulative.csv, vaccine_distribution_cumulative.csv, vaccine_completion_cumulative.csv. All of these datasets are currently available as time series in the directory “timeseries_prov”.
  3. The file codebook.csv has been moved to the directory “other”.

We appreciate your patience and hope these changes cause minimal disruption. We do not anticipate making any other breaking changes to the datasets in the near future. If you have any further questions, please open an issue on GitHub or reach out to us by email at ccodwg [at] gmail [dot] com. Thank you for using the COVID-19 Canada Open Data Working Group datasets.

  • 2021-01-24: The columns "additional_info" and "additional_source" in cases.csv and mortality.csv have been abbreviated similar to "case_source" and "death_source". See note in README.md from 2021-11-27 and 2021-01-08.

Vaccine datasets:

  • 2021-01-19: Fully vaccinated data have been added (vaccine_completion_cumulative.csv, timeseries_prov/vaccine_completion_timeseries_prov.csv, timeseries_canada/vaccine_completion_timeseries_canada.csv). Note that this value is not currently reported by all provinces (some provinces have all 0s).
  • 2021-01-11: Our Ontario vaccine dataset has changed. Previously, we used two datasets: the MoH Daily Situation Report (https://www.oha.com/news/updates-on-the-novel-coronavirus), which is released weekdays in the evenings, and the “COVID-19 Vaccine Data in Ontario” dataset (https://data.ontario.ca/dataset/covid-19-vaccine-data-in-ontario), which is released every day in the mornings. Because the Daily Situation Report is released later in the day, it has more up-to-date numbers. However, since it is not available on weekends, this leads to an artificial “dip” in numbers on Saturday and “jump” on Monday due to the transition between data sources. We will now exclusively use the daily “COVID-19 Vaccine Data in Ontario” dataset. Although our numbers will be slightly less timely, the daily values will be consistent. We have replaced our historical dataset with “COVID-19 Vaccine Data in Ontario” as far back as they are available.
  • 2020-12-17: Vaccination data have been added as time series in timeseries_prov and timeseries_hr.
  • 2020-12-15: We have added two vaccine datasets to the repository, vaccine_administration_cumulative.csv and vaccine_distribution_cumulative.csv. These data should be considered preliminary and are subject to change and revision. The format of these new datasets may also change at any time as the data situation evolves.

https://www.quebec.ca/en/health/health-issues/a-z/2019-coronavirus/situation-coronavirus-in-quebec/#c47900

Note about SK data: As of 2020-12-14, we are providing a daily version of the official SK dataset that is compatible with the rest of our dataset in the folder official_datasets/sk. See below for information about our regular updates.

SK transitioned to reporting according to a new, expanded set of health regions on 2020-09-14. Unfortunately, the new health regions do not correspond exactly to the old health regions. Additionally, the provided case time series using the new boundaries do not exist for dates earlier than August 4, making providing a time series using the new boundaries impossible.

For now, we are adding new cases according to the list of new cases given in the “highlights” section of the SK government website (https://dashboard.saskatchewan.ca/health-wellness/covid-19/cases). These new cases are roughly grouped according to the old boundaries. However, health region totals were redistributed when the new boundaries were instituted on 2020-09-14, so while our daily case numbers match the numbers given in this section, our cumulative totals do not. We have reached out to the SK government to determine how this issue can be resolved. We will rectify our SK health region time series as soon it becomes possible to do so.


Tuesday 2021-02-16 03:04:14 by Magical Marvelous MADMADMAD Mister Mim !

nope could of just picked this project up where i left off, but the good infiltrators at github and a bunch of scumfucks here in colorado decided to delete everything because they think if i have to reproduce things they can trick their victims that will never see my fucking work that time isnt changing, which admittedly has in the past been effective the FIRST time someone like myself that they fucked over wandered back here, but doesn't really do anything but cause them to do the same things themselves like the fucking idiot pervert assholes that they are.


Tuesday 2021-02-16 03:43:06 by Matthew Rease

Fixed A Diagonal + Progress + Why?

So, I've had these changes just sitting on my computer for months (since the previous commit - I believe I was pretty active before dropping the project), and I finally decided to do something about that.

Most of this code was already done months ago, but lines 739-771 were added by me today. Also, all the comments on the new code (not modified lines, but the NEW lines) didn't exist until today... Yes, I'm serious.

Anyway, while messing around I also found a bug in the game logic that I had never noticed before. If you try to win with a top-right to bottom-left diagonal pattern, and the final piece to place to finish this line, is the one in the center of the board, and you have a piece in the top left (but not the bottom right!), then you wouldn't win.

You'll notice in the testWin procedure, I commented out one line. That's the issue :) Basically the check goes: there is a piece in the top-left, okay, now check the bottom-right. We don't have a piece there? Okay, then they didn't win.

It works fine if you don't have a piece in the top left, since I made sure to then jump down to the part of the code that was ALREADY WRITTEN to check for a top-right to bottom-left diagonal win, but yeah, the problem is that I incorrectly jumped to the end of the routine without checking that in certain situations.

This work on the help screen isn't finished, for the record. But seems to "work" despite a gnawing feeling that the code I wrote is very terrible and slow and bad and I hate it.


Tuesday 2021-02-16 04:47:07 by technodromex

Update contracts

Smart contract programming is insane and I love it, thank God!


Tuesday 2021-02-16 05:29:42 by Magical Marvelous MADMADMAD Mister Mim !

well here we are taking the quicker route you'd think this would be so much quicker but with all the built in delays heh...

p.s. you assholes enjoying pretending a plague is killing america rather than the corrupt rich sucking the money out of the country.

one must wonder how they feel now ? all the people who conspired and left us all in the dirt and corrupted us for fun without telling us about their ridiculous background system, which our fucking parents signed us up for without consulting us first.. just so they could make us suffer.

what a great tradeoff now they're all dead eyed slaves, moreso than they ever were, and i watch them die and i laugh a little. not to the point of their moronic delusion thinking life is much better for me. but :) please die, so the last of us who were decent humans who would have loved our offspring unlike all of them, can repopulate the world with people better than us without these people conspiring to ruin them and us.


Tuesday 2021-02-16 05:38:18 by İ. Göktuğ Kayaalp

bin/ffprofile.sh: run firefox w/ ‘-allow-downgrade’ b/c fuck you, mozilla


Tuesday 2021-02-16 06:44:14 by tombetthauser

Moron fuck packagejson not loc stupid idiot imposter


Tuesday 2021-02-16 08:19:05 by NyxAsteria

yes i do hate myself why do you ask

I tied up the beginning and end of Lunatic Nautilus, what we made of it at least. You get all the cutscenes and battles we actually made, which is not that many. You do not get to see the debug room, or any debug traits, so the game has been slightly altered (like removing the extra Cleaver from the ship deck and having the thunder effect play when you go up the steps). All instances of "Finn" and "Fang" have been changed back to "Dolph" and "Cleaver" and I've taken concept art for each character and made those the images that show for them on the CTB menu. This was fun and also horrible, it's like touching a gross grown-out beard that makes you dysphoric instead of shaving it (which matches my current state) but you know, FallingStar is finite and I'm nothing without it, so I might as well squeeze out a legacy from what I've already made.

God, I should really shave, huh.


Tuesday 2021-02-16 09:00:23 by Iñaki Arenaza

Provide ability to customise cljfmt code formatting

Describe the solution you'd like

It should be possible to provide a custom formatting configuration for cider-nrepl/cljfmt. The cljfmt configuration format is described here:

https://github.com/weavejester/cljfmt#configuration

The desired solution should have a defcustom variable where the configuration can be provided.

Describe alternatives you've considered

A workaround to this solution is to use an after-save-hook as described here:

https://github.com/dzer6/cljfmt-graalvm

However, in this case, the two formatters (cider, external cljfmt) will keep fighting each other causing an awful user experience.

Additional context

In clojure-emacs/cider#2907 Bozhidar Batsov commented:

You can just disable dynamic (REPL-powered) indentation if you don't rely on it https://docs.cider.mx/cider/0.26/config/indentation.html Alternative you can completely override the indentation logic of clojure-mode and provide whatever implementation you want. CIDER simply hooks into it and adds new indentation rules there dynamically when connected.

To which Brunno Bonacci responded:

However, I still think that this ticket stands. Having the possibility to configure the cljfmt indentation rules is a nice-to-have feature.


Tuesday 2021-02-16 09:20:46 by Joel Ambass

Support new Quality Option for Processor

This patch adds support for a new quality parameter that will be forwarded to the image processor.

This patch requires refile/refile-mini_magick#23

Specs

Specs are missing since I couldn't find any information on how to run them and I was also not sure how the specs are build up. I can see that there are some dummy processors used that work with strings rather than images. I would love to get some help and add specs for the new parameter.

Version Requirements

Since this change requires a specific version of the refile-mini_magick gem we would need to somehow ensure that the correct version is present.

Since the gem dependency points from refile-mini_magick to refile I'm not sure how we would enforce this.

Other processors would also now need to support this option which might makes no sense for non-image based processors.

Maybe another patch is needed first that exposes the supported options on each image processor. I'll love to hear your thoughts on how to solve this problem.


Tuesday 2021-02-16 09:22:06 by ezio84

base: Fix 2tap2wake after Ambient Pulsing on some devices

like taimen and walleye, instead sunfish (and probably newer pixels) doesn't need this

To apply, override the config_has_weird_dt_sensor bool in the device tree

Change-Id: If539299eacfc488f0831d612875d4901d48cba09


TL;DR for some reason, on taimen and walleye, after ambient pulsing gets triggered by adb with the official "com.android.systemui.doze.pulse" intent or by our custom "wake to ambient" features, the double tap sensor dies if you follow this steps:

  • screen is OFF
  • trigger ambient pulsing with a double tap to wake (if custom wake to ambient feature is enabled), or the official intent by adb, or with music ticker or any other event
  • after ambient display shows up, don't touch anything and wait till the screen goes OFF again
  • double tap to wake, again
  • the double tap sensor doesn't work at all and device doesn't wake up

Now, funny thing, after the steps above, if you cover then uncover the proximity/brightness sensor with the hand, then double tap to wake again, the wake gesture works as expected.

When covering/uncovering the proximity/brightness sensor, this happens: 11-10 22:02:00.916 967 998 I ASH : @ 1993.460: ftm4_disable_sensor: disabling sensor [double-tap] 11-10 22:02:02.013 967 998 I ASH : @ 1994.556: ftm4_enable_sensor: enabling sensor [double-tap]

When you switch screen ON with power button, the doze screen states do the same: the sensor gets disabled then enabled again if device goes to DOZE idle state.

Instead, after Ambient pulsing, when the pulsing finishes, the sensor is still enabled, so the disable/enable event doesn't happen this time. And that's why, for some reason, it doesn't respond anymore.

So, in a nutshell: i've no idea why this sh#t happens lol, but with a super lazy hacky tricky dirty bloody nooby line change, we can force the sensor disable/enable event when the device goes to DOZE state.

Change-Id: I8ce463a6e435e540e3ca93336c5dba7a95771b56

Signed-off-by: Aston-Martinn advaithbhat9@gmail.com


Tuesday 2021-02-16 09:41:17 by AdrienTheMan

paper bag logo menu!!!!!! lets goo (#130)

  • lunchin time

mmmmmmmmmmmmmmmmmmmmmm lnch

  • cleanin n shit ig.............................................

i gues............................

  • smol QoL (:

zadzadazfafaefefr'gres"'t"(a-t"a-yya

  • requested changgs

bless burgman good info


Tuesday 2021-02-16 10:16:04 by Trenton44

-Kinda wish I'd started this with a framework, but it's not like i can do that fast. So in the meantime... -Created a response type for every important item that is sent from the api. processes items down to necessary data blueprints that are then sent to the client. -These responses include a string that is used as an HTML blueprint for the item. I hope this isn't a sin or anything, and if it is, I'd love to know. (Please, I don't wanna start any bad habits.)


Tuesday 2021-02-16 10:40:19 by Peter Nowee

Add ppc64le and bump Python versions in Travis CI

Considering that:

  • IBM, through its supplier Datamatics, requested many Python projects to add the ppc64le (Power) architecture to their Travis CI test matrices. Related links:
  • The request to add ppc64 testing was also made to pydot in PR pydot/pydot#243 by @asellappen of Datamatics. The proposed implementation extended the test job configuration by matrix expansion.
  • Matrix expansion means adding a new dimension to the build configuration (e.g. arch, os, env), after which the number of test jobs is automatically multiplied by the number of choices given in the newly added dimension. In this case, it would add a dimension of two architectures, expanding the matrix of test jobs by a factor of 2: 5 Python versions (at that time) * 2 architectures = 10 test runs of 2 to 3 minutes each.
  • Gerrit Huizenga of IBM said he thinks the adding of ppc64le test jobs to Travis will not lead to additional billing from Travis CI to the OSS community, because he provides Travis CI with the Power hardware.
  • The Travis CI documentation on CPU architectures currently says IBM architecture support is in beta stage and only available for Open Source repositories.
  • There are many abstraction layers between pydot and the hardware architecture, including other libraries, Python and the operating system. Pydot itself does not need to be compiled for a specific architecture. In a perfect world, pydot is architecture-independent and testing pydot on a single architecture should be sufficient.
  • However, the world is not perfect and abstraction layers can be leaky. According to Gerrit Huizenga of IBM, corner cases do come up, which is why they do so much testing up front and provide free access to testing.
  • Still, even if an automated testing service is provided for free, it has an environmental footprint, so there are limits to how much we should make use of that as well.
  • Travis CI also requests open-source users to remember that Travis CI provides its service free of charge to the community and only specify the matrix we actually need.
  • Even if we ever find an architecture-specific bug in pydot, it seems highly likely that it will come out on several Python versions for that architecture.
  • All of this was further discussed between pydot maintainers Sebastian Kalinowski (@prmtl) and Peter Nowee (@peternowee) and Gerrit Huizenga of IBM in PR pydot/pydot#245.

The following was decided:

  • Baseline testing is kept at amd64, with testing of the lowest and the highest Python versions supported by the Python community, as well as the lowest end-of-life (EOL) Python version that we still choose to support pydot on. Currently, that means Python 3.6, 3.9 and 2.7 respectively.
  • For other architectures, such as ppc64le, we do limited testing to catch reasonably expectable corner cases and validate architecture independence in a resource conserving way. For now, we start with Python 2.7 and 3.9.

We can always reconsider this policy depending on actual findings.


Tuesday 2021-02-16 12:02:10 by amanjain14

Update aman.json (#21)

The changes have been published!! It should reflect in less than 24 hours.

Here's what you need to do next

If your domain points to a server you own, add `domain-name.is-a.engineer` to your server config. For https, you will have to configure ssl certificate to allow the new subdomain.

For github pages users,

  • Go to your github page repo (`user/user.github.io`)
  • Open up the settings tab
  • Scroll down to the Github pages section
  • In the Custom domain text input, enter the domain you registered (`domain-name.is-a.engineer`)
  • Check the Enforce HTTPS checkbox below the input
  • Give it some time to reflect and you should be good to go

Need help with your domain?

If you are having trouble setting up your domain, create an issue. I will try my best to get back to you asap!

Made a mistake in the record?

Don't worry, you can create a new pull request with the corrections

Love/Hate the service?

Love it? Leave it a star! Also consider donating so that I can keep this service running forever! Hate it? Please leave your feedback by creating an issue. I would really like to keep improving this service for other users.

Wanna support this project?

Help me in my mission to keep this service alive forever by donating!

Buy Me A Coffee


Tuesday 2021-02-16 17:33:55 by MilkyNail (MariaMod)

Add files via upload

Family Bitch mode update:

  • Added a scene by Plaze - Playing with brother in FB mode. Just beg him to play more with you, and you'll get what you want! And, if you have a non-consent setting turned on, you have a 20% chance of getting the more interesting part of this scene
  • Added ability to go to the Park while you are walking
  • And there you can meet another scene by Plaze. Turn bestiality on, get more than 40 points of FBCorruption and play with your new friend - dog Max! There are two scenes, actually Other changes:
  • Added a scene by Rachael - Father is Ron (for the giving birth event)
  • Another scene - Father is Jerry
  • And another - Father is stranger
  • An update in the system that prevents save files crash (by Middlewared)

Tuesday 2021-02-16 18:00:56 by BHARATHANNAPUREDDY

Output file

INTPUT: #India is a place where color is doubly bright The most successful #IPL team in history. This is Official ID For #IPL Cricket Follow #Modi becomes the #India President he landed at RCB in the I#PL auction Potentially habitable exoplanet #ProximaB discovered #RogerFederer wins #US Open for 5th time Petrol price is thus crossing Rs 100 in #India #India Comeback ki C/o Address #Modi Govt has made #India #AtmaNirbharBharat. #Canada hardest hit by import drop from $2 billion to $360million #GravitationalWaves detection successful Traces of liquid water discovered on #Mars Life Could Survive on Exoplanet #ProximaB #Indonesia's foreign minister @Menlu_RI says discussing with #India on assisting #Myanmar through political situation ISRO becomes 4th space agency to reach #Mars Huge Win for #India who crushes #England by 317 runs in 2nd Test at #Chennai. Surviving a #failure gives you more #selfconfidence. #Failures are great learning tools #Success isn't always about greatness. Misery loves company and so do #passion, #success, and #ambition.

-----Top trending hashtags----------------- #india #ipl #modi #proximab #mars #rogerfederer #us #atmanirbharbharat. #canada #gravitationalwaves #indonesia's


Tuesday 2021-02-16 19:16:21 by AOCAWOL

-added Imparius blocks -added experimental end lake features (THANKYOU PAUL! <3) credits and shit go to betterEnd & paul for the amazing help <3 love ya'll!!


Tuesday 2021-02-16 20:18:57 by Julien Marechal

realease - scoreboard - auto ban tk - search improvement - permanent steam profiles (#62)

Release #minor

  • Live Score Page (+ public version)

Added a new page for live scores. There's a public build with more eye candy that will be available at the port configured in your env. By default <your ip>:7010 for server 1 If you don't want it public read the .env note next to the PUBLIC_STATS_PORT config. The page needs a new service called "live_stats_refresh" that crunches the logs (it takes a little will) to build the stats, I advise smaller server to increase the refresh interval, see details in the config/default_config.yml files (don't forget to copy it, do not change this one) The stats are literally LIVE so it will only show players that are in the game and will only count the stats of a player from his last "CONNNECT" in the logs (it uses the DB sessions). Before you ask, no I can't add the most intersting stuff like Garri destroyed / planted, defense / attack score and such. Hopefully we get more info exposed in the U9 - U10, winking @spono :)

Some screens from ours: https://prnt.sc/zr8rry https://prnt.sc/zr8sp5 https://prnt.sc/zr8uq3

Demo: https://stats.hllfr.fr/#/livescore

  • Steam profiles (part of) are now stored in your database

The steam profile is refreshed / stored upon connection of a player. There's a cronjob defined in config/crontab that will update your entire database at 23h and 1h server time. It refreshes profiles older than 30 days. There's a possibility that on the first runs you hit you max daily requests for the Steam API (it's 100k)

  • Historical players and search improvements

Using the newly stored steamprofiles you can now search by Country, and you see the players' avatar and country (when available). https://prnt.sc/zr90zt https://prnt.sc/zr931o

You can now search for flags, you can add several flags however it will match any players that have at least one of those (not the combination). Maybe i'll change that later. https://prnt.sc/zr94lt https://prnt.sc/zr9adn

See the configuration in config/default_config.yml to enable and tweak to your likings

As an example here's my config:

 BAN_TK_ON_CONNECT:
  enabled: yes
  message: "Vous avez été banni automatiquement car votre premiere action apres connection est un TEAM KILL.\nSi c'etait un accident demandez votre déban sur: https://discord.io/HLLFR (Via un navigateur, pas directement dans discord)\n\nYou've been banned automatically for TEAM KILLING. Cheers."
  author_name: "HATERS GONNA HATE"
  # Exlude TK with certain weapons from triggering the ban, adding "None" by default so it will exclude arty, tanks and road accidents
  # The weapon name should be as found in your game logs (case insensitive), know weapons at the time of writing: 'SMine M2 Kar98_Sniper M43 M1911 MK2_Grenade Satchel_M37 None P38 M24_Grenade M1A1 MP40 Kar98 STG44 Thompson MG42 Garand Tellermine43 Luger Satchel_3KG Panzershreck M1918A2_BAR M1919 G43 M1903 SMG_M3_GreaseGun M1_Carbine Bazooka'
  # To not exclude any weapons write exclude_weapons: []
  exclude_weapons:
    - None
  #  - MK2_Grenade
  #  - M24_Grenade
  # TK after connect only counts as an offense for the first N minute after connecting, N is the number you set below
  max_time_after_connect_minutes: 5
  # A TK after connecting will be ignored if there's N kills before it
  ignore_tk_after_n_kills: 1
  # A TK after connecting will be ignored if there's death before it
  ignore_tk_after_n_death: 2
  # If left unset, the webhook default to your audit log webhook
  discord_webhook_url: "https://discord.com/api/webhooks/773232516756013058/MvttskhaNw9f0XIM6NYY3EK7Olu6lXn_aDxOzltmYmwP7lW2O1XtZvVP0vUkPgfzw9W2"
  discord_webhook_message: "{player} banned for TK right after connecting"
  # If any of the conditions below are true the player won't be inspected upon TK
  whitelist_players:
    has_flag:
      - ✅
      - 🇫🇷
    is_vip: yes
    # Set to 0 for infinite
    has_at_least_n_sessions: 10
  # The maximum amount of TK tolerated after connecting, TK get counted if it wasn't excluded by any of the parameters above
  teamkill_tolerance_count: 1

Which translate to: If the player is VIP, has a checkmark flag, and FR flag or has at least 10 sessions on our server he won't get checked. Otherwise: Any Teamkill within 5 minutes of connection time with any weapons other that "None" (Those are arty, tank, roadkills and mines (sometimes)) that is not precede by at least 1 KILL or 2 Death will result in a immediate ban (it's quite quick).

We caught a bunch of dudes that were later reported by mass teamkiller by other servers. We also got some false positives of course, especially beginners but those come to our discord to claim unban, or we just check them after the ban and unban. We may raise the tolerance count to 2 soon to be kinder on noobs (at the expense of an extra TK :( ).

  • Bug fixes:
  • Cron jobs are fixed, the would not work before as the environment variables for the RCON were not passed through
  • Watchlist has been fixed (was totally not functionnal)
  • Namekick has fixed (was totally not functionnal)
  • broadcast_temp_bans from config/config.yml now really works

Tuesday 2021-02-16 20:46:10 by terrynmuse

champion of life p2 buffs beetles fly in denser lines less delay between fireball barrages skeletron, skeletron prime's guardians leave behind gores magic missile, flamelash, rainbow rod die after 5sec in emode golem head will stop deathray sweep if you're fighting in temple and it leaves the temple plantera p1 crystal leaves no longer insta attack on spawn p1 periodically puts dicer mines on you clears spiky balls and p1 mines when going into p2 p2 crystal leaves undulate faster fixed dicer mines not being able to spread through walls tim's concoction allows black recluses to drop dangersense potions slight dusts for devi deathrays at their origins devi ray hearts are slightly translucent wof ichor damage buffed to do same damage as cursed flame fixed abom arena doing twice his contact damage the lightning rod nerfed, does half damage when held standardized all solar enemies to inflict on fire and burning eater of souls, eater of worlds cursed fireballs inflict 4sec cursed inferno always spirit champ will not despawn if you are in ug desert, even if you aren't standing in front of a bg wall pillars only do their auras during celestial invasion (i.e. usually not when spawned with outsiders portal) a lot of replaced dust rings/other fx with solid light rings: eoc p3 transition qb bee swarm telegraph deviantt shadowbeams wof eye vulnerability switch retinazer ray spin cultist p2 fireball ring ml p1 support attacks eridanus p2 transition will champ phase transitions earth champ phase transition life champ phase transition spirit champ hallow reflector new shadow champ telegraph for the dashes timber champ head has a delay after snowball rain before it moves to next attack so it doesnt track its snowballs onto you skeltron prime p2 limb swipe glows red when they attack low ground will un-actuate nearby platforms too


Tuesday 2021-02-16 20:52:45 by Michael Niksa

Eliminate more transient allocations: Titles and invalid rectangles and bitmap runs and utf8 conversions (#8621)

References

  • See also #8617

PR Checklist

  • Supports #3075
  • I work here.
  • Manual test.

Detailed Description of the Pull Request / Additional comments

Window Title Generation

Every time the renderer checks the title, it's doing two bad things that I've fixed:

  1. It's assembling the prefix to the full title doing a concatenation. No one ever gets just the prefix ever after it is set besides the concat. So instead of storing prefix and the title, I store the assembled prefix + title and the bare title.
  2. A copy must be made because it was returning std::wstring instead of std::wstring&. Now it returns the ref.

Dirty Area Return

Every time the renderer checks the dirty area, which is sometimes multiple times per pass (regular text printing, again for selection, etc.), a vector is created off the heap to return the rectangles. The consumers only ever iterate this data. Now we return a span over a rectangle or rectangles that the engine must store itself.

  1. For some renderers, it's always a constant 1 element. They update that 1 element when dirty is queried and return it in the span with a span size of 1.
  2. For other renderers with more complex behavior, they're already holding a cached vector of rectangles. Now it's effectively giving out the ref to those in the span for iteration.

Bitmap Runs

The til::bitmap used a std::optional<std::vector<til::rectangle>> inside itself to cache its runs and would clear the optional when the runs became invalidated. Unfortunately doing .reset() to clear the optional will destroy the underlying vector and have it release its memory. We know it's about to get reallocated again, so we're just going to make it a std::pmr::vector and give it a memory pool.

The alternative solution here was to use a bool and std::vector<til::rectangle> and just flag when the vector was invalid, but that was honestly more code changes and I love excuses to try out PMR now.

Also, instead of returning the ref to the vector... I'm just returning a span now. Everyone just iterates it anyway, may as well not share the implementation detail.

UTF-8 conversions

When testing with Terminal and looking at the conhost.exe's PTY renderer, it spends a TON of allocation time on converting all the UTF-16 stuff inside to UTF-8 before it sends it out the PTY. This was because ConvertToA was allocating a string inside itself and returning it just to have it freed after printing and looping back around again... as a PTY does.

The change here is to use til::u16u8 that accepts a buffer out parameter so the caller can just hold onto it.

Validation Steps Performed

  • big.txt in conhost.exe (GDI renderer)
  • big.txt in Terminal (DX, PTY renderer)
  • Ensure WDDM and BGFX build under Razzle with this change.

Tuesday 2021-02-16 20:57:47 by Christian Morales

Ball Man is Better AND I fixed some other shit

The original implementation of Ball Man was dictated solely by whether or not your grounded. Undoing Ball Man is still dictated by grounded but becoming Ball Man is now determined by: Jumping, Grappling, or Zooming!

I also fixed some glitches with dashing. Namely this glitch: "if you press the dash button and no direction it will wait until the next direction you press then immediately dash."

I also made a slight modification to zooming. Collisions no longer completely halt momentum, I wonder if we'll all like that or if we'll be changing it back because we're sliding around everywhere like a fucking greased hog.


Tuesday 2021-02-16 21:09:16 by Tomas Janousek

X.H.DynamicLog: Move UTF8 encoding from dynamicLogString to xmonadPropLog'

For many (10+) years, we had a cascade of ugly workarounds:

  • X.U.Run.spawnPipe returned a binary handle, so the String passed to it must have been encoded by C.B.UTF8.String.encodeString

  • X.H.DynamicLog.dynamicLogString therefore returned such an encoded String, so one could use it directly in a hPutStrLn, but literal Strings wouldn't work

  • xmonadPropLog' also expected an encoded String to make it easier to use together with dynamicLogString, again breaking usage with String literals and other normal unicode Strings

Then in 1d0eaddc2530 Sibi fixed spawnPipe to return a handle usable with normal Strings, which then obviously broke the entire cascade. But, instead of using the opportunity to remove all the ugly workarounds, he decided to add some more on top, so now spawnPipe with dynamicLogString outputs doubly encoded UTF-8 and xmobar has a hack to strip this double encoding (https://github.com/jaor/xmobar/pull/482), which only works when XFT is in use and breaks on some long unicode codepoints. :-(

There is a better way: make everything just use normal Strings and only encode when it goes out the wire. This means dynamicLogString can be freely mixed with String literals, manual uses of xmonadPropLog' don't need encodeString, and everything just works nicely.

This obviously breaks configs that used some of these pieces in isolation (like mine), but that's a small price to pay. After all, right now all users of spawnPipe/dynamicLogString are getting doubly encoded UTF-8 which might or might not work in xmobar and probably breaks horribly everywhere else, so this fix should be a clear improvement. :-)

Fixes: 1d0eaddc2530 ("Make spawnPipe to use system's locale encoding") Fixes: xmonad/xmonad-contrib#377 Fixes: https://github.com/jaor/xmobar/issues/476 Related: xmonad/xmonad-contrib#334 Related: https://github.com/jaor/xmobar/pull/482


Tuesday 2021-02-16 21:36:53 by Julian Egelstaff

Adjust date searches to be timezone aware

If a user searches for {TODAY} and on the server {TODAY} is tomorrow or something like that, then we adjust the time accordingly so the semantics of the search match what the user typed. Except beware that data entered is always recorded with the now() timestamp of the server, so today starts and ends at midnight in the server's timezone. Ergo, server should really always be set to the timezone of the largest cohort of users. Or we should alter how we record the creation and mod times, so we get the local time of the user?? Time conversion just plain sucks all round.


< 2021-02-16 >