text:
Remove dependencies on TEST_DATASET_CONFIGS and replace with mth5 files

The parkfield test dataset has been being loaded from a generic h5 that was populated from ascii data.  A cleaner way to do the parkfield test is to make an mth5 out of that data and then remove any of the one-off codes that are used to load PKD or SAO channels.
Here is a list of all the instances of TEST_DATA_SET_CONFIGS.  Once this cleanup is complete, this variable will only exist in tests/parkfield/
tests/parkfield/make_parkfield_mth5.py:6:from aurora.sandbox.io_helpers.test_data import TEST_DATA_SET_CONFIGS
tests/parkfield/make_parkfield_mth5.py:12:    dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]
aurora/aurora_driver.py:31:from aurora.sandbox.io_helpers.test_data import TEST_DATA_SET_CONFIGS
aurora/sandbox/io_helpers/test_data.py:173:TEST_DATA_SET_CONFIGS = make_test_configs()
aurora/sandbox/mth5_helpers.py:25:from aurora.sandbox.io_helpers.test_data import TEST_DATA_SET_CONFIGS
aurora/sandbox/mth5_helpers.py:99:    test_dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]
aurora/sandbox/mth5_helpers.py:143:    from iris_mt_scratch.sandbox.io_helpers.test_data import TEST_DATA_SET_CONFIGS
aurora/sandbox/mth5_helpers.py:144:    test_dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]
aurora/sandbox/mth5_helpers.py:413:            test_dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]
aurora/sandbox/mth5_helpers.py:424:        test_dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]
aurora/sandbox/mth5_helpers.py:436:        test_dataset_config = TEST_DATA_SET_CONFIGS[dataset_id]

The CONFIG is moved into tests/parkfield.
The next task is to remove dependency on mth5_test_data repository
The parkfield example data can be accessed from tests/parkfield/data/pkd_sao_2004_272_00-02.h5
Note that test_data has a load_df() method that is not used.  Best to deprecate this, and remake the compressed h5 with ch_stn column labelling. Then we can use only the load_channel() method.

I have now removed almost all dependencies on mth5_test_data repo. The reason the channels are not carrying the filters through to the parkfield mth5 file is probably because ChannelTS() are being initialized in the  get_channel() method but filters are not being assigned there.  Check this next

Was able to replace Parkfield test data with mth5 by modifying the from_obspy() method in mth5/timeseries/run_ts.py
TODO: Raise an issue in mth5 about this change which involved "x":"1","y":"2" mappings in channel nomenclature, possibly associated with dipole orientation.
This maybe associated with incomplete metadata at PKD, but in any case the numeric rather than alpha mapping resulted in Exceptions.  It is possible that if we used the numeric mappings elsewhere in the data structure this wouldn't have happened.  In any case we need to understand the motivation between the relabeling, and whether it is warranted to do this, vs. be more general with channel nomenclature.

The test dataset configs will stay in aurora until at least phase 2.  They have been moved into test_utils/ however

repo: simpeg/aurora


text:
investigate potential uses for various APIs

https://developer.aylien.com/
https://wit.ai/home
https://developer.ibm.com/watson/

https://api.ai/

https://github.com/mortenjust/awesome-conversational/

http://www.programmableweb.com/news/top-10-machine-learning-apis-att-speech-ibm-watson-google-prediction/analysis/2015/08/03

source: gharchive/issue

repo: simpixelated/slackbot

license_type: permissive

license_source: bigquery


text:
Assertion Failed: A helper named 'v-get' could not be found

Great addon, many thanks! When using it and attempting to use the v-get helper that is part of ember-cp-validations, I get the following error:
Assertion Failed: A helper named 'v-get' could not be found

I would expect instead to see the validation message in the web page. The template code I am using is:
{{v-get model valuePath 'message'}}

A workaround is to install ember-cp-validations directly with:
ember install ember-cp-validations

I'm not sure how to fix, but it seems the helper is registered at https://github.com/offirgolan/ember-cp-validations/blob/master/index.js#L14.

I think this is probably not a problem of ember-validated-form-buffer but caused by the fact that Ember CLI doesn't always handle dependencies of dependencies correctly.

authors: marcoow ricog

repo: simplabs/ember-validated-form-buffer

license: MIT

license_source: github-api


text:
Play Store changelog year wrong

On the Play Store, all recent updates show the year as 2018 in the changelog.

I was literally coming in here to write this bug. :p

Yah, it's a big deal.

repo: simple-last-fm-scrobbler/sls


text:
HI! Fix it please!

https://github.com/simplygoodsoftware/pyrusapi-python/blob/63fd0ed7b6a6887b1f15e39bb35f58ebb4e57d6d/pyrus/models/responses.py#L194
missing the closing bracket!
Пожалуйста, пофиксите ! Не хватает закрывающей скобки.

Thank you for noticing! Fixed in version 2.12.

authors: alyonka-boyarskih dkuptsov

repo: simplygoodsoftware/pyrusapi-python


text:
Historic immigration and migration

The Vic2 migration system is simply to crude, to mimic all aspects of migration. In particular the preference to migrate to neighbor countries, and post-colonial preference for former colonial over-lord. Also the migration to the Gulf does not happen,

By mitusonator
State capitals attract immigrants and Dubai is the biggest city in UAE
By Simsulla
There is a github ticket for "Historic immigration and migration #178" this will include specific definitions for migration to the Gulf, as the Vic2 "bas-bigration" system simly is not flexible enough to model this major pop moves. I will see to that Dubai gets it's fare share of Asian migrants.

By BattleSarge
I just noticed something about the mod. Most to all nations in Africa or Asia do not allow immigration or emigration, thus nearly completely disallowing pops to leave the country. This is somewhat stupid, as no pops EVER leave, and places like Canada, New Zealand, Australia, etc. have absolutely tiny populations and get no immigration, as all immigration is taken by Germany (all 1000 migrating pops). The laws restricting emigration should NOT completely disable anybody from leaving, as people always find a way to leave, so nations even with that policy should have at least 50/100 pops leaving per month.
Also, make a bit more immigration pull for Europe and North America, as well as Oceania. These nations in real life have immigration issues, with minority groups growing, etc. In game, the immigration is so light that these issues don't exist, and nations like Canada and Australia and even some Euro nations are depopulated and have a negative pop growth trend, whereas it should be positive, slightly due to immigration, if you know what I mean.

More suggestions
By Thinghunter
Hi guys,
I have an idea related to the immigration of Turkish/Yugoslav/Polnish... to western Europe:

A decision "Anwerbeabkommen" between e.g. Germany and Turkey that moves craftsmen (and perhaps Clerks/other poptypes -> balance) from east Anatolia to German cities. This would on the one hand reflect the Turkish/Kurdish immigration to Germany and on the other hand ensure that Turkey's east provinces do not get too strong economically (as in history).
The resulting debuff for Turkey is needed, because in my games, Turkey usually becomes very strong in the 2020s- usually a grandpower with bigger power than France/GB
Similar decisions between the following countries are also possible:

Germany - Turkey/ Yugoslavia
France - Tunisia/ Marocco, especially France - Algeria as decision after Algerian Independence War
Austria - Turkey/ Yugoslavia
Italy - Albania
...

There is a list for Germany: https://de.wikipedia.org/wiki/Anwerbeabkommen
As you can see, there are many examples and thus i think this is a big improvement for the mod

After the Fall of Eastern Bloc, many immigrants migrated from East Europe to Western Europe, lowering those economy drastically (Do you say that in this way? My English, sadly, is not that good.) -> good time for similar Events.

Similar events could be used to represent the strong migration of refugees especially in Africa/ Arabia

I hope you like my idea,
Thinghunter

Hi,
I will try to modify the "Deportation of Germans" decision for an "Anwerbeabkommen". For balancing reasons, it can not be very historical, i guess. My "Anwerbeabkommen" will only include the movement of pops, other results (increase of populists in Germany, reduction od militance in Turkey... I am not able to implent because I lack the modding experience)
Thinghunter
Ps: How to push my programm?

Look in decisions/poland the Expulsion of the Germans for some cod for moving around pops.
If you know how to clone the repo and use githup make a pull request. If not, just send me the files.
_Note: please use the Vic2 validator and validate that your changes does not cause tons of errors, before sending changes. _

I went into a problem: pops are only moved, when i own the province. Why did the "Deportation of Germans" decision work for Russia, and moved pops in Poland?
Did the decision trigger an event in Poland or something like this?

there is no such limitation. Code?

anwerbeabkommen_germany-turkey = {
picture = "deportation_of_germans"
potential = {
tag = GER
		NOT = { has_country_flag = anwerbeabkommen_germany-turkey }
	}

	allow = {

	}

	effect = {
		set_country_flag = anwerbeabkommen_germany-turkey
		relation = { who = TUR value = 100 }
		# Who: craftsmen/clerks
		# Target: (by absolute number) many	++++ (8): W. Berlin, Frankfurt, München, Stuttgart, Düsseldorf, Köln, Dortmund, Hamburg,
		#					+++  (5): Bremen, Mannheim, Nürnberg, Wiesbaden, Karlsruhe
		#					++   (3): Braunschweig,  Aachen, Saarland
		#					+    (7): Ingolstadt, Hannover, Konstanz, Freiburg, Siegen, Mainz, Tübingen
		# From: (Turkish&Kurdish mixed)
		#					++++: Konya, Diabakyr, Adana, Trabzon, Urfa, Van, Malatya, Sivas
		#					+++ : Mersin, Kayseri, Amasia, Giresun, Sinop, Marash,
		#					++  : Antep, Bolu, Denizli
		#					+   : Kars, Hakkari, Erzincan, Mugla, Kastamonu, Afyon, Kütahya

		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 873 } } move_pop = 549 } # Konya -> W. Berlin
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 893 }  } move_pop = 564 } # Diabakyr -> Frankfurt
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 894 }  } move_pop = 599 } # Adana -> München
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 892 }  } move_pop = 589 } # Trabzon -> Stuttgart
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 878 }  } move_pop = 589 } # Kayseri -> Stuttgart
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 899 }  } move_pop = 578 } # Urfa -> Düsseldorf
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 890 }  } move_pop = 575 } # Van -> Köln
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 879 }  } move_pop = 580 } # Sivas -> Dortmund
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 889 }  } move_pop = 528 } # Malatya -> Hamburg

		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 895 }  } move_pop = 539 } # Mersin -> Bremen
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 877 }  } move_pop = 569 } # Amasia -> Mannheim
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 884 }  } move_pop = 595 } # Giresun -> Nürnberg
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 883 }  } move_pop = 565 } # Sinop -> Wiesbaden
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 896 }  } move_pop = 586 } # Marash -> Karlsruhe

		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 881 }  } move_pop = 539 } # Bolu -> Braunschweig
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 871 }  } move_pop = 576 } # Denizli -> Aachen
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 898 }  } move_pop = 573 } # Antep -> Saarland

		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 885 }  } move_pop = 601 } # Kars -> Ingolstadt
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 886 }  } move_pop = 601 } # Ardahan -> Ingolstadt
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 892 }  } move_pop = 534 } # Hakkari -> Hannover
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 888 }  } move_pop = 588 } # Erzincan -> Konstanz
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 872 }  } move_pop = 587 } # Mugla -> Freiburg
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 880 }  } move_pop = 583 } # Kastamonu -> Siegen
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 866 }  } move_pop = 570 } # Afyon -> Mainz
		any_pop = { limit = { OR = {type = craftsmen type worker } location = { province_id = 867 }  } move_pop = 591 } # Kütahya -> Tübingen

	}
	ai_will_do = {
		factor = 1
	}

}

Your syntax is incorrect. The Vic2 validator

type = craftsmen type worker
type = craftsmen type = worker

Does not work with corrected syntax, too.
It only works when i own the province (or when owner is vassal?) What code do i need to vassalize first, then move pops and then end vassalisation?

Have you checked your code with the validator?

This is the decition after fixing errors...

You have to change scope to Turkey (or have turkey take the decision). any_pop is "any_pop" of the country in scope (Germany), and then you select for Turkish provinces not controlled by Germany.

When I do it in your way it works! Thanks a lot.
Now I want to enhance the decision:
When both Germany&Turkey are Member of NATO or TUR is in sphere of USA and has better Relations to GER than 100, GER and TUR should be able to trigger the decision 1964.
Then the other country shall get an event with 2 options: Accept or decline the agreement.
Then pops are moved and Nationalist parties in GER shall get a boost (more Pops in favor) and some militance and consciousness.
Turkey shall get some prestige.
And of course the relationship between the 2 countries shall get a boost.
Futhermore, Germany shall get some influence in Turkey.
Since I have no real idea how to trigger an event like this, i need a good example how to implement it.
I hope you like my idea,
Thinghunter

Will put this back as an enhancement and not include it in 1.08.
This is the basic work items
Change poptypes/*.txt and common/pop_types.txt
Migrate: Craftsmen & Clerks only to state capital
Emigrate: Craftsmen & Clerks only to state capital if have pop of culture - by event create seed pop (see above)
Migrate: Farmer/laborer if any neighbor province has pop of culture THIS.

the problem with this is that all emigrants are put in one pool - and then from that pool they are distributed. So it is difficult to make Mexicans go to rural US border provinces.

The bulk migration needs to be done by move pop - move craftsmen and clerks to gulf/europe/anzus destination. This will benefit the industry of the recipient and hurt the source countries industry which is good,

the problem with this is that is that it is not for had possible to get the source pop size, this may potentially move very large pops.

These are event driven migration cases (only including large and culturally diverse pops - small, cultural/religious close are not included): The idea is to use this as "pop seeds" that then are replenished by the normal migration
South Asian Migration to the Gulf
Bahrain indain_muslim 200000 indian 300000
Saudi Arabia
Indian: 1.3 million, Pakistani: 1.5 million, Egyptian: 900,000, Yemeni: 800,000, Bangladeshi: 500,000, Filipino: 500,000, Jordanian/Palestinian: 260,000, Indonesian: 250,000, Sri Lankan: 350,000, Sudanese: 250,000, Syrian: 100,000 and Turkish: 100,000
Oman
India (465,660 for both sexes), Bangladesh (107,125) or Pakistan (84,658)
Qatar
Indians are the largest community, numbering 545,000 in 2013,[19] followed by 341,000 Nepalis, 185,000 Filipinos, 137,000 Bangladeshis, 100,000 Sri Lankans and 90,000 Pakistanis
Kuwaint Philipino (est. 450,000), Indian (est. 600,000)
UAE Indian (25%), Pakistani (12%), Emirati (9%), Bangladeshi (7%), and Filipino (5%) of  8,264,070
European Arabs
Denmark sunni_arab 121000
Ireland sunni_arab 40000
Norway indian_muslim 40000 sunni_arab 40000 somali 40000
Germany 2.7 million Turkish, 1,15 Kurdish, 1.5 million Polish, 1mil sunni_arab
Belgium 220000 Turks, 450000++ sunni_arab
Netherlands 2.4% Indonesian, 2.4% German, 2.2% Turkish, 2.0% Surinamese, 1.9% Moroccan, 0.8% Antillean and Aruban
Turkish Migration to Europe
Germany 2.7 million Turkish, 1,15 Kurdish, 1.5 million Polish, 1mil sunni_arab
Austria 300000 Turks
Belgium 220000 Turks, 450000++ sunni_arab
Swiss Tamil 6.3% Turkey (3.8%)
Netherlands 2.4% Indonesian, 2.4% German, 2.2% Turkish, 2.0% Surinamese, 1.9% Moroccan, 0.8% Antillean and Aruban
Somali Migration to Europe - event somalia.txt
Norway indian_muslim 40000 sunni_arab 40000 somali 40000
Sweden somali 50000 turks 50000 sunni_arab 211000 persian 70000
South East Asian Migration to Europe
Greece 480,824 Albanian, 34000 Pak+247,090 Afg,Pak,Bangladesh
Spain sunni_arab 800000, 900000 mestizo, pardo_portuguese 60000, indaian_munslim 60000, chines e 160000
Norway indian_muslim 40000 sunni_arab 40000 somali 40000
Swiss Tamil 6.3% Turkey (3.8%)
Post-Colonial
Portugual black_portuguese 110000 pardo_portuguese 110000
Netherlands 2.4% Indonesian, 2.4% German, 2.2% Turkish, 2.0% Surinamese, 1.9% Moroccan, 0.8% Antillean and Aruban
Fracne sunni_Arab 6 mil black:french 3 mil
UK indian 1050000, pakistan 750000, bangladex 280000, Chinese 250000, balck_anglo 1150000
Spain sunni_arab 800000, 900000 mestizo, pardo_portuguese 60000, indaian_munslim 60000, chines e 160000
New World Migration
USA
latino 21224087 (11700000 mexico, 1100000 cuba, 1100000 el salvador, 900000 Dominican Rep, 900000 Guatemala)
South Korea 1100000, Vietnam 1240000, Philipino 1800000, chinese 2166000, Indian 1780000
NZ
China 100000, Polynesia 100000, India 70000
Australia Chinese (4.3%), Indian (2.0%), sunnia_arab 1% indain_muslim  1.2%
Canada , Chinese (4.3%), Black_anglo (2.9%), sunni_arab 0.8%, indain_muslim (2.5%) and indian (1.5%)

Simplify the migration: simplified migration clerk/craftsmen migrate to state capitals only. State capitals in "conflict" states does not qualify as migration target.

authors: Thinghunter simsulla

repo: simsulla/nwomod

license: mit


text:
allow ability to disable/persist notifications

question: I don't see any reason why persistNotifications should be true. the user has to manually click on the notification to remove it. is this desired default behaviour?
EDIT: also the tests are totally broken. I get from 14-19 failures each try. also, I don't know how I would go about testing this configuration, nor do I think it's really necessary

To make the maintainer's life easier, I...

[ ] created at least 1 spec to cover my changes,
[x] npm tested my code and it returns lots of failures regardless
[x] adjusted the readme.md, if it was necessary and
[ ] would like to receive get a :beer: or :coffee: after that hard work!

the fixing algorithm should not need to detect the right indentation - just transform it into the one defined in the editorconfig file.
it can be done easily in a setTimeout, I believe -- but this may create two save events, so I'm not sure. either way auto-fix should be opt-in, and not default behaviour, meaning that those opting-in are aware of the performance implications.
I don't believe that there is a way to performantly detect a malformed file, either. there way be a way to do a check only on lines changed, but this seems overly complex and unnecessary.

so, since I do not think it will be easy to performantly detect a malformed file, I think there should only be two things done:

conform project to editorconfig command which goes through and ensures for all file patterns defined in the editorconfig, the corresponding files are forced to conform to the definition.
conform on save approach should be opted into by the user using wiriting an init script (like I have done), and the only modification should be made to allow the notification to automatically go away. (perhaps only documentation should be made showing how that can easily be done)

this should satisfy 98% of use-cases and anyg remaining cases can be controlled by the user's scripts

the user has to manually click on the notification to remove it

Just an FYI: You can hit ESC to dismiss all notifications at once (I went for a long time without even knowing this was possible). However, you're right in that the notification noise should be adjustable — if you run fix and no changes were needed/done, there's no point having a popup appear reminding you that life is wonderful and there's really nothing to worry about.
So while I'm sympathetic with your frustration, I don't want to bloat this package with a bunch of fine-grained verbosity controls filtering how much information gets displayed, for how long, and under what circumstances. If you're running the fix command often enough that even hitting ESC to dismiss them becomes laborious, then perhaps a fix-quietly command would be preferable. Something that's a "Don't bug me" version of fix, with the consequence that any important information (such as unexpected errors) would remain unnoticed.
Remember, the notification system is also used for displaying status-reports, something users expect to see (in detail, I might add). Because this package is using the notification system for displaying both important and spammy feedback, there's no solution that would be obvious and beneficial to everybody.

BTW, if this ever happens again with another package, you can tell it to completely shut the fuck up by adding this to your ~/.atom/init.js file (or loading it from a file somewhere nearby):
Then, to block notifications generated by the editor:log-cursor-scope command (or in this instance, EditorConfig:fix-file, you'd use either of the following:
blockNotificationByCommand("editor:log-cursor-scope");
blockNotificationByPattern(/Scopes at Cursor/);;

Feel free to use and share. Plenty more hacks in my Atom setup that you can pillage that'll show how much a grouchy, intolerant bastard I really am. 😀

wow dude, thanks for linking your atom config. super inspiring :)

source: gharchive/pull-request

authors: Alhadis heavyk

repo: sindresorhus/atom-editorconfig


text:
Stop on first failed assertion

I noticed that test cases are not stopped when an assertion fails. To be exact, they are stopped asynchronously. Here is an example:
test(t => {
  let arr = [ { name: 'abc' } ];
  t.is(arr.length, 2);
  t.is(arr[1].name, 'xyz');
  t.end();
});

The error I'd expect to see is "1 !== 2" while the actual error I get is "cannot read property 'name' of undefined" because execution is not stopped on the failed assertion (on the line above).
Is there a reason why Test#exit() is called asynchronously (by Test#_assert()) rather than synchronously (which is the case for errors thrown outside assertions)?

Duplicate of #121
Fix PR: #259

authors: jamestalmage jankuca

repo: sindresorhus/ava


text:
Add Cloud Native

https://github.com/rootsongjc/awesome-cloud-native
A curated list of awesome cloud native tools, software, and tutorials.
By submitting this pull request I confirm I've read and complied with the below requirements 🖖
Requirements for your pull request

Don't waste my time. Do a good job, adhere to all the guidelines, and be responsive.
[ ] You have to review at least 2 other open pull requests. (WIP)
You have read and understood the instructions for creating a list.
This pull request has a title in the format Add Name of List.

✅ Add Swift
✅ Add Software Architecture
❌ Update readme.md
❌ Add Awesome Swift
❌ Add swift
❌ Adding Swift
❌ Added Swift

Your entry here should include a short description about the project/theme of the list. It should not describe the list itself. The first character should be uppercase and the description should end in a dot. It should be an objective description and not a tagline or marketing blurb.

✅ - [iOS](…) - Mobile operating system for Apple phones and tablets.
✅ - [Framer](…) - Prototyping interactive UI designs.
❌ - [iOS](…) - Resources and tools for iOS development.
❌ - [Framer](…)
❌ - [Framer](…) - prototyping interactive UI designs

Your entry should be added at the bottom of the appropriate category.
The suggested Awesome list complies with the below requirements.

Requirements for your Awesome list

Has been around for at least 30 days.That means 30 days from either the first real commit or when it was open-sourced. Whatever is most recent.
Don't open a Draft / WIP pull request while you work on the guidelines. A pull request should be 100% ready and should adhere to all the guidelines when you open it.
Includes a succinct description of the project/theme at the top of the readme. (Example)

✅ Mobile operating system for Apple phones and tablets.
✅ Prototyping interactive UI designs.
❌ Resources and tools for iOS development.
❌ Awesome Framer packages and tools.

It's the result of hard work and the best I could possibly produce.
If you have not put in considerable effort into your list, your pull request will be immediately closed.
The heading title of your list should be in the following format: # Awesome Name of List

✅ # Awesome Swift
✅ # Awesome Web Typography
❌ # awesome-swift
❌ #

Non-generated Markdown file in a GitHub repo.
The repo should have awesome-list & awesome as GitHub topics. I encourage you to add more relevant topics.
Not a duplicate. Please search for existing submissions.
Only has awesome items. Awesome lists are curations of the best, not everything.
Includes a project logo/illustration whenever possible.

Either centered, fullwidth, or placed at the top-right of the readme. (Example)
The image should link to the project website or any relevant website.
The image should be high-DPI. Set it to maximum half the width of the original image.

Entries have a description, unless the title is descriptive enough by itself. It rarely is though.
Includes the Awesome badge.

Should be placed on the right side of the readme heading.

Can be placed centered if the list has a centered graphics header.

Should link back to this list.

Has a Table of Contents section.

Should be named Contents, not Table of Contents.
Should be the first section in the list.
Should only have one level of nested lists, preferably none.

Has an appropriate license.

That means something like CC0, not a code licence like MIT, BSD, Apache, etc.
WTFPL and Unlicense are not acceptable licenses.
If you use a license badge, it should be SVG, not PNG.
To verify that you've read all the guidelines, please add comment with just the word unicorn.

Has contribution guidelines.

The file should be named contributing.md. Casing is up to you.

Has consistent formatting and proper spelling/grammar.

The link and description are separated by a dash. Example: - [AVA](…) - JavaScript test runner.
The description starts with an uppercase character and ends with a period.
Consistent and correct naming. For example, Node.js, not NodeJS or node.js.

Doesn't include a Travis badge.You can still use Travis for list linting, but the badge has no value in the readme.
Doesn't include an Inspired by awesome-foo or Inspired by the Awesome project kinda link at the top of the readme. The Awesome badge is enough.

Go to the top and read it again.

Thanks for making an Awesome list! 🙌
It looks like you didn't read the guidelines closely enough. I noticed multiple things that are not followed. Try going through the list point for point to ensure you follow it. I spent a lot of time creating the guidelines so I wouldn't have to comment on common mistakes, and rather spend my time improving Awesome.

@lauthieb Thank you for your suggestions. I will check it.

For the dead links, here are some of the fixes :

https://concourse-ci.org/ is now https://concourse-ci.org/
http://www.capitalone.io/Hygieia is now http://hygieia.github.io/Hygieia
https://lyft.github.io/envoy isn't dead anymore but is a redirection to https://www.envoyproxy.io/
https://www.weave.works/product/weave-scope/ is now https://www.weave.works/oss/scope/
http://openwhisk.incubator.apache.org/serverless seems to be a concept linked to the wikipedia page on their website https://en.wikipedia.org/wiki/Serverless_computing
https://coreos.com/blog/torus-distributed-storage-by-cores.html is now https://coreos.com/blog/torus-distributed-storage-by-coreos.html

I'd recommend to add linters and run them with travis.

authors: Dvergar fkromer rootsongjc sindresorhus

repo: sindresorhus/awesome


text:
Add ESP

The ESP8266 and ESP32 have become highly popular, and the go-to devices for a good chunk of DIY IoT projects, largely replacing the Raspberry Pi in small embedded uses.
https://github.com/agucova/awesome-esp#readme
The list includes cool projects, useful libraries, tools and firmware for both microcontrollers. Note that I disabled two linter rules, both, I believe, false positives. (I'll raise an issue in awesome-lint).
By submitting this pull request I confirm I've read and complied with the requirements 🖖
Pull requests reviewed: #1688 and #1687.

I've dropped it and added the links to the quoteblock.

Tweet: https://twitter.com/awesome__re/status/1223484444629061632

authors: agucova sindresorhus


text:
Not working in raspberry pi3

When I using this module in raspberry pi3, has exception:

Error: Both xsel and fallback failed
at makeError (/home/pi/test-rfid/node_modules/clipboardy/lib/linux.js:16:11)
at xselWithFallbackSync (/home/pi/test-rfid/node_modules/clipboardy/lib/linux.js:43:10)
at Object.copySync (/home/pi/test-rfid/node_modules/clipboardy/lib/linux.js:53:3)
at Object.exports.writeSync.text [as writeSync] (/home/pi/test-rfid/node_modules/clipboardy/index.js:39:14)
at Timeout._onTimeout (/home/pi/test-rfid/index.js:44:13)
at ontimeout (timers.js:436:11)
at tryOnTimeout (timers.js:300:5)
at listOnTimeout (timers.js:263:5)
at Timer.processTimers (timers.js:223:10)

Same on ubuntu

please fix this problem
my machine: #109-Ubuntu SMP Fri Nov 8 09:30:18 UTC 2019

authors: mvtcode sinedied tahsinature

repo: sindresorhus/clipboardy


text:
Is IE11 supported?

Does this package is going to support IE11? Can it be somewhere denoted?
https://github.com/nk-o/jarallax/issues/101

It's not. You'll have to transpile it using Babel or likewise.

repo: sindresorhus/dom-loaded


text:
Option to hide logging

It would be really nice if there was an option to hide all the grunt logging statements to git rid of some of the clutter in the console.
Maybe add an option wrapping around https://github.com/sindresorhus/grunt-svgmin/blob/master/tasks/svgmin.js#L29 to either show or hide those log statements?

That should be fixed in grunt by adding log levels. I'm not interested in having log related options in this task. You could always $ grunt &>/dev/null
https://github.com/ericclemmons/grunt-verbosity
https://github.com/bahmutov/quiet-grunt

@sindresorhus What about only wrapping it in verbose, so it shows up there and I don't have to introduce more libraries to hide it?

I tried that on some other plugins and people complained about the files not being shown in the output. I'm done changing back and forth. People will complain either way.

authors: bluetidepro sindresorhus

repo: sindresorhus/grunt-svgmin


text:
Doesn't support non english characters in text node

Example:
<svg xmlns="http://www.w3.org/2000/svg"
     width="100%" height="100%" viewBox="0 0 400 400"
     direction="rtl" xml:lang="fa">

  <title direction="ltr" xml:lang="en">Right-to-left Text</title>
  <desc direction="ltr" xml:lang="en">
    A simple example for using the 'direction' property in documents
    that predominantly use right-to-left languages.
  </desc>

  <text x="200" y="200" font-size="20">داستان SVG 1.1 SE طولا ني است.</text>

</svg>

The example you've provided is working fine: https://github.com/sindresorhus/is-svg/commit/9a76bd8957f0b00e9db46e046d0f74be059f4620 Happy to look more into this if you submit a failing test.

authors: evilebottnawi sindresorhus

repo: sindresorhus/is-svg


text:
Limit align-repository-header to non-full-width pages

Some pages are full-width, so they don't need to be "aligned".

Centered: https://github.com/sindresorhus/refined-github
Centered: this very page
Centered: https://github.com/sindresorhus/refined-github/pull/3322/files?diff=unified
Full width: https://github.com/sindresorhus/refined-github/pull/3322/files?diff=split

Example of what full-width pages look like before this PR

repo: sindresorhus/refined-github


text:
Fix replication provider and server_id (rebased #118)

Rebased #118 to run tests.

Fixed cookstyle offenses, rest all good.

repo: sinfomicien/mariadb


text:
Follow up on dense SOMADataFrame objects

Questions:

Can we step in RAM-sized chunks through a bigger-than-RAM SOMADataFrame object if the SOMADataFrame object is stored as a dense tiledb array;
Can we do the same, also using a value-filter

Repro script
Repro script (adapted from tests/test_soma_dataframe.py):
https://gist.github.com/johnkerl/bd9530ab73d4e4c99e5f5b04888d0ace
Failure
Fails with:
Traceback (most recent call last):
  File "/Users/johnkerl/git/single-cell-data/TileDB-SOMA/apis/python/./repro.py", line 77, in <module>
    table = sdf.read_all(value_filter="foo == 40 or foo == 20")
  File "/Users/johnkerl/git/single-cell-data/TileDB-SOMA/apis/python/src/tiledbsoma/soma_dataframe.py", line 241, in read_all
    return pa.concat_tables(
  File "pyarrow/table.pxi", line 2623, in pyarrow.lib.concat_tables
  File "/Users/johnkerl/git/single-cell-data/TileDB-SOMA/apis/python/src/tiledbsoma/soma_dataframe.py", line 222, in read
    yield util_arrow.ascii_to_unicode_pyarrow_readback(table)
  File "/Users/johnkerl/git/single-cell-data/TileDB-SOMA/apis/python/src/tiledbsoma/util_arrow.py", line 139, in ascii_to_unicode_pyarrow_readback
    [element.as_py().decode("utf-8") for element in old_field]
  File "/Users/johnkerl/git/single-cell-data/TileDB-SOMA/apis/python/src/tiledbsoma/util_arrow.py", line 139, in <listcomp>
    [element.as_py().decode("utf-8") for element in old_field]
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte

at repro-script line 77:
table = sdf.read_all(value_filter="foo == 40 or foo == 20")

even though
table = sdf.read_all(ids=slice(1, 2))

has already succeeded
Behavior using ASCII strings
Idea: try to rebase atop https://github.com/single-cell-data/TileDB-SOMA/pull/359 -- when I do that I get at line 82 of the same repro script:
table = sdf.read_all(ids=slice(1, 2))
...
assert table.num_rows == 2

fails since table is
foo: [[-2147483648,20,-2147483648,40,-2147483648]]
bar: [[nan,5.2,nan,7.4,nan]]
baz: [["","ball","","dog",""]]

which is perhaps OK.
Conclusion
[still typing up]

@ihnorton @nguyenv repro script, tiledb-py only:
https://gist.github.com/johnkerl/081f9decd1d8b6d9e1d942eb6b3204de
Is it reasonable to expect the ID query for rows 1 and 3, and the value-filter query for the same rows, to produce the same output?

@johnkerl - is there any update on this?  I would like to see this land relatively soon, as I believe it is going to be a breaking API change.
My understanding is that your gist is producing the correct output, as any query of a dense array must produce a result of the same shape as the coordinates.  In the case of a dense array, the QueryCondition will not change the result shape, just its contents (filtered results are replaced with the fill value).  This is completely different from sparse arrays, where the result shape changes as well.
probably worth confirming, but I asked @ihnorton the same question last month, and I believe this was the answer.

ps. I do think that there are use cases like yours, where it would be really nice to have the option of dropping filtered values, rather than filling.

current efforts are on #466

All PRs are merged! :)

authors: bkmartinjr johnkerl

repo: single-cell-data/TileDB-SOMA


text:
Use identifier as storage_parameter

identifier = unquoted string | double-quoted string
Related to #3891,
the root of the problem(#3891) is that a single-quoted string should be considered as a string literal instead of an identifier, which suggests we should reject a single-quoted string when parsing for an identifier.
However, as we currently anticipate an identifier in the With clause:
create table t(v1 int, v2 int) with ('appendonly' = true);

or
CREATE SOURCE IF NOT EXISTS src WITH ('kafka.topic' = 'abc', 'kafka.servers' = 'localhost:1001')

, therefore we require some other modifications besides rejecting single-quoted strings as identifiers.
It is doable, but after checking the syntax in PG, it is found that the key in the With clause is called storage_parameter.
I suggest we follow this practice and only use an identifier, i.e. unquoted string or double-quoted string, for the keys in the With clause.

It is called an identifier in some SQL parser, but in our own one, it should be an ObjectName.
In essence, we need to allow xxx.yyy as the key in the With clause instead of only xxx or yyy without . as shown in toast.autovacuum_freeze_max_age

repo: singularity-data/risingwave


text:
Allow means to run docker side by side, so you can work on multiple projects at one

When you install Laravel served we are presented with the prompt to run the development server.
Visit the development server at: http://localhost:8095

How feasible would it be to allow the port to be changed, so that multiple instances can be run side by side?
would be good to have access to the port within config/served.php

Actually you can. Just set or change it here
https://github.com/sinnbeck/laravel-served/blob/master/src/config/served.php#L44
Then run php artisan served:up

Can this be closed?

Yes indeed.

authors: iammikek sinnbeck

repo: sinnbeck/laravel-served


text:
Optimize loop filtering

This has a bunch of small optimizations to the loop filtering methods, since I noticed they take quite a lot of time.
Details
Inlining
I marked all methods that are called inside loops for agressive inlining. This avoids method call overhead. Some small utility methods are also force inlined now. Most of the performance improvement came from inlining.
Optimize mask methods
Some methods there are supposed to return a 0 or 0xFFFFFFFF (-1) mask. For example, vp8_filter_mask had the pattern mask |= (sbyte)(x > limit ? 1 : 0). This can be simplified a lot. For example, since mask can only be either 1 or 0, mask could be a bool rather than int, which generates sligthly better code this method. Also, it is only interested in whenever any of the values is above the limit, so we can just return early on the first value that is above the limit to avoid useless checks. Math.Abs is also not the most efficient implementation, so I replaced it with a shorter, branchless one.
Signed load
Some methods had the pattern ps1 = (sbyte)(*op1 ^ 0x80);. This loads a byte from memory, XORs it with 0x80, then sign extends. This produces a total of 3 x86 instructions:
movzx       ecx,byte ptr [rdi]
xor         ecx,80h
movsx       rax,cl

However, we can just sign extend on load and get rid of the movsx at the end. For example, by rewriting that to int ps1 = *(sbyte*)op1 ^ -128;, we now get:
movsx       rdi,byte ptr [r8]
xor         edi,0FFFFFF80h

Which is one instruction less per load. I also changed the type from sbyte to int as that allows vp8_signed_char_clamp to be returned as int, which gets rid of another sign extension. The sign extension on this method is redundant because after clamping, we already know that the value is in range, and for this reason the sign extension can't change it.
Optimized signed char clamp:
This can be done with a single branch. We can just sign extend the value, and compare with the unextended value. If they are equal, then the value is already in range, we don't need to do anything. Otherwise, it is not in range, and we need to return either -128 or 127. If the input value was negative, then we need to return -128, otherwise 127. Knowing this, we can simple extract the sign bit by right shifting the value by 31. We then have a mask of 0xFFFFFFFF if the value is negative, or 0 if positive. By doing 127 ^ mask, we get 127 if the value was positive (as x ^ 0 = x) or -128 if negative (since 0x7F ^ 0xFFFFFFFF = 0xFFFFFF80 = -128).
Optimized abs
This one is pretty simple. We only need to negate the value if it is negative. The trick is similar as the one above, we get the sign mask by right shifting the input by 31, then invert the value (with a XOR by mask) and subtract 1 (by adding the mask) if negative. If positive, the value is unchanged as both XOR and addition by 0 are no-ops.
No "checked"
I removed the checked blocks as it needs to produce additional code to ensure the operation does not overflow, which has performance impact, but I can add it back if this change is undesired. I assume it was only added for debugging?
Test results
Before:
https://user-images.githubusercontent.com/5624669/135164418-e671437c-72e4-4e53-82cc-73d1b95920d8.mp4
After:
https://user-images.githubusercontent.com/5624669/135207366-9424dd39-ef6e-4b8d-9ac0-d1a7573f8594.mp4
Most videos that I tested are about 2X faster with this change.
I tested it here and made sure that the output for the video I'm using for the tests did not change with the optimization. Nevertheless I recommend reviewing it carefully just to be sure I didn't mess anything up 😅 .
I think improving loop filtering performance further will require using hardware intrinsics, but that requires targeting .NET Core as .NET Standard does not support it (probably because it is not supported on .NET Framework). I think the solution adopted by other projects is adding some ifdefs on the code and making two builds of the library, one "netstandard" and another for .NET Core, which can take advantage of the new APIs.

Looks good to me. The checked blocks were added in an attempt to catch flaws in the ported code. Your fixes seem to have made a big improvement in reliability so I'd say it's worth removing them to get any performance increase.

authors: gdkchan sipsorcery


text:
docs/242-add-visual-aid-to-user-guide

Types of changes

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

Checklist

[x] My code fulfills the acceptance criteria.
[ ] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.

great progress @tomashee . I can see the images here. do you think you will be able to add all the images?

Ive added all images for review

Thnx. Merged!

authors: ainsofs tomashee

repo: sita-samoa/sita-membership


text:
Suppress Lando crash question

TravisCI waits 10 minutes :(

@acobster Still stalling :(
https://docs.lando.dev/help/data.html#tl-dr
Please advise.

I think this need to be in the global config: config.yml

I think we should just prioritize #119. Lando-in-Travis was incidental complexity to get Cypress working, and we won't need that if we get WP unit tests (which are really integration tests) working. The e2e test suite was always a maintenance pain and run an order of magnitude slower.

authors: acobster szepeviktor

repo: sitecrafting/conifer


text:
Metrics for multiple urls are mixed together, giving incorrect summaries

I'm running sitespeed with the lighthouse plugin and using a targets.txt file with two urls, and I noticed that the reports created for the second url don't appear to be correct (there's always way too wide a variance between the fastest and slowest run).
That led me to add some debugging into the plugin so I could see the metrics that are returned in each iteration.
Iterations:
      "largestContentfulPaint": 2743,
      "largestContentfulPaint": 1908,
      "largestContentfulPaint": 1940,
      "largestContentfulPaint": 5075,
      "largestContentfulPaint": 1908,

Summary:
      "largest-contentful-paint": {
          "median": 1939.64,
          "mean": 2714.94,
          "min": 1908.17,
          "p90": 5075.21,
          "max": 5075.21
        },

Iterations (url 2):
      "largestContentfulPaint": 7876,
      "largestContentfulPaint": 8335,
      "largestContentfulPaint": 8222,
      "largestContentfulPaint": 8213,
      "largestContentfulPaint": 8836,

Summary (url 2):
      "largest-contentful-paint": {
        "median": 6475.79,
        "mean": 5505.73,
        "min": 1908.17,
        "p90": 8836.26,
        "max": 8836.26
      },

As you can see the summary for the first results is correct, but the summary for the second results doesn't bare much of a resemblance to the iterations it's meant to be summarising.  The minimum value appears to be copied from the first url's minimum, and the median and mean are figures that don't appear anywhere.

Aha ok. Here's the original implementation https://github.com/sitespeedio/plugin-lighthouse/pull/36 - I haven't touched that part myself, any chance you could have a look? My guess it that the implementation than only handles one URL per run.

Yeah no problem - looking into it now, and I'll raise an PR if I can fix it :)

Issue fixed in https://github.com/sitespeedio/plugin-lighthouse/commit/fe5dec9a6e4caa6501a46e336e4522c5be99c903

authors: andrewmee soulgalore

repo: sitespeedio/plugin-lighthouse


text:
No data

My server has outbound access to the internet, however, when I run speedtest, I get no data. Do you have a way to troubleshoot this or recommendations?
speedtest-cli
Retrieving speedtest.net configuration...
Testing from Suddenlink Communications (47.x.x.x)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Education Service Center, Region 13 (Austin, TX) [24.09 km]: 1800000.0 ms
Testing download speed................................................................................
Download: 0.00 Mbit/s
Testing upload speed................................................................................................
Upload: 0.00 Mbit/s

try:
speedtest-cli --server 16089
As indicated by the latency, there might be some issues at Education Service Center, Region 13 (Austin, TX).

Very odd...I get the same, when I point to UT, Austin, and when I run the list, I get no response.
omv5:/# speedtest --server 16089
Retrieving speedtest.net configuration...
Testing from Suddenlink Communications (47.222.229.142)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by University of Texas, Austin (Austin, TX) [24.09 km]: 1800000.0 ms
Testing download speed................................................................................
Download: 0.00 Mbit/s
Testing upload speed................................................................................................
Upload: 0.00 Mbit/s
omv5:/# speedtest-cli --list | less
-bash: speedtest-cli: command not found

Sorry that I find out this script is Selecting best server based on ping..., so with the high latency server output.
It means that all the servers close to you are the same with high latency.
It will be difficult to find a usable server.
By the way, you need to change command to speedtest --list | less  because your execuatable name is speedtest.
If this failed like less: command not found, your may try installing less with your package manager such as apt install less and try again.
This helps choose servers but may be not useful in your case. Perhaps servers located in other state work.
As for recommendations, official CLI is available if you do not mind.

https://github.com/sivel/speedtest-cli/blob/c58ad3367bf27f4b4a4d5b1bca29ebd574731c5d/speedtest.py#L1472-L1486
the 1800000.0 ms is calculated that all three latency tests failed.
And something preventing speedtest can be infered from the 0.00 Mbit/s speed.
If you really need to test the line speed, other ways are available, such as wgeting some linux isos from closest mirror or testing from web browsers with alternatives like Netflix Fast.

Similar previous issues exist.
maybe firewall, maybe ISP.

I can do this from my desktop...I will see about the official. What are firewall requirements at server? I can validate that, but it shouldn't be an issue.

Many speedtest.net HTTP server implementations operate on TCP port 8080.
If you are getting 1800000.0ms that indicates that you cannot communicate with the test server.
The server configurations can be seen in http://c.speedtest.net/speedtest-servers-static.php

I found a rule that blocked outbound 8080.

authors: Comaxim RyanGuyCode RyanMilton sivel

repo: sivel/speedtest-cli


text:
feat: add dependabot to manage the deps

👋  I have applied dependabot whenever I saw the fit, I think it would be a good addon for maintain the project health. Let me know what you think. :)

It looks amazing. Thanks.

repo: six-ddc/plow


text:
Refactor per josefpihrt roslynator

I cloned code into a new branch and have been working to refactor code. Passes all UT so I tried to create PR but failed with permission problem. Please advise how I should do this. thanks

Moving this conversation to the pull request... https://github.com/sjdirect/abot/pull/160

authors: DickBaker sjdirect

repo: sjdirect/abot


text:
Move samples to testfiles

尝试将 samples 移进 testfiles，并不进行 tlg 比较，只进行编译测试。

目前 l3build check 无法对编译错误进行反应（代码行），通常应当通过 tlg 比较得出，需要更进一步的更改。

先去提了个 issue：https://github.com/latex3/l3build/issues/324

sample-thesis-ja 没有用到 biber，也就找不到 .bcf

repo: sjtug/SJTUTeX


text:
Tracking players position (X,Y) on the map

Hello there,
thanks a lot for the great job your are doing with this api!
I was wondering if its possible to track the position of the players
and the items they buy accross time.
What about the minions also? Are they tracked with your api?
Thanks a lot for your reply,
cheers,
Mehdi

http://pastebin.com/wEkmMSZq
Anyone know's id for Oracle?

http://pastebin.com/wEkmMSZq
Anyone know's id for Oracle?

Nope.
But I know what e == null means: The hero has not been picked yet :)

From  https://github.com/dotabuff/d2vpk/blob/master/dota_pak01/scripts/npc/npc_heroes.txt
it says 111

Hi,
I have some difficults to get the name of one object.
For example, I want to get the first item (e = Entity object and ctx = Context in event):
int handle = (int)e.getProperty("m_Inventory.m_hItems.0000");

                   if (handle != 2097151) {
                       String itemName = ctx.getProcessor(Entities.class).getByHandle(handle).getProperty("m_iName");
                   }

But I have always a null value.
And with the following handle:
 int handle = (int)e.getProperty("m_hMyWearables.0000");

I have the m_iName  empty (sry for the formatting :p):
+-------+-----------------------------------------------------------------------------------------+--------------+
|    59 | m_iParentAttachment                                                                     | 0            |
+-------+-----------------------------------------------------------------------------------------+--------------+
|    60 | m_iName                                                                                |              |
+-------+-----------------------------------------------------------------------------------------+--------------+
|    61 | movetype                                                                                | 0            |
+-------+-----------------------------------------------------------------------------------------+--------------+
Finally, I search the items in the 6 slots.
P.S : I have Clarity SNAPSHOT 2.1
Cheers,

Hey,
your code looks right. It might well be true that I broke something. Maybe @howardchung can say a word about the latest snapshot's ability to read S1 entities correctly. I am to tired now to look into it, real life needs attention. If it doesn't clear up, I'm gonna look into it, tomorrow or the day after.
Also, can you give the match id?

@Chonchonts : If you are parsing Source 1 replays, I highly recommend using clarity 2.0. The 2.1 snapshot has changed a lot of things in how the Entity operates. Can you try that and see if it helps? In addition, can you provide a replay along with what Entity you were looking at? I can take a look and see what's going on.

Hi,
Thanks for the replies, but it's my fault :X. There are few items at the start of the game with empty "m_iName". I make some conditions and I have succeeded in recover data.
But it's still are to me to understand the different types of items attributes.
I understand this: m_Inventory.m_hItems.0000  but why 14 slots ? 6 slots + stash?
Also: bcc_localdata.m_hMyWeapons.0015 to bcc_localdata.m_hMyWeapons.0048 is quite strange for my too.
Finally, I search which key on the keyboard is assigned by the player to each 6 slots of items and each m_hAbilities, its possible?

Hi guys. I'm really new to java programming so I'm dealing with lots of newbie problems at once here. My ultimate goal is to dump to a text file all the xy positions of all 10 players during the entire dota2 replay, say every second or so. I tried downloading the clarity project as zip file, extract it, open it in eclipse as a maven project, and then I inserted the code from http://pastebin.com/wEkmMSZq  (by mehdi-kaytoue) into a main.java file with the package/directory skadistats.clarity.examples.simple. The problem seems to be that the following imports are not found:
skadistats.clarity.match.Match;
skadistats.clarity.parser.Profile;
skadistats.clarity.parser.TickIterator;
com.dota2.proto.Demo;
The following imports seems to be unproblematic:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import skadistats.clarity.model.Entity;
import skadistats.clarity.Clarity;
Am I doing something wrong? Is this a result of the new Dota2 patches (source2)? Any advice would be greatly appreaciated!

Yes, the code is for Clarity 1, which was loooooong ago :)
Example code I recommend in a recently closed issue, as well as Opendota's parser. Please open a new issue when you have questions, and do not revive such an old one!

Oh and regarding getting positions on the map, Clarity Analyzer has code that does this

@spheenik The link in your post above has expired, can you provide a new link for where Clarity gets positions on the map?

Here is a more recent example: https://github.com/skadistats/clarity-examples/blob/master/src/main/java/skadistats/clarity/examples/position/Main.java#L165-L171
The whole example does almost what you want to achieve, it will print a line whenever a hero's position changes.

authors: Anders-Lunde Chonchonts joram56 mehdi-kaytoue mkmkmkmk spheenik uSide ykim

repo: skadistats/clarity


text:
Allow passing parameters in GetRawFile

Here's the promised PR according to #17

Cool, thank you!

authors: phobeus skazantsev

repo: skazantsev/WebDavClient


text:
Investigate support for Tailwind Alternatives (Windi, UnoCSS, etc)

These include but are not limited to the following:

windi
unocss

General idea is some folks choose to use these in favor of Tailwind. We've had a handful of questions or requests for support of these. So the first step is to review what can be done, document hurdles to overcome, then discuss adjustments that would allow for these to run.
See @niktek message regarding progression on Windi:
https://github.com/Brain-Bones/skeleton/discussions/79#discussioncomment-3461511
Known issues can be documented below:

The Skeleton's Tailwind-specific plugin would have to be replaced
(will expand this as we investigate further)

I've been meaning to update this ticket, but I did do some research into supporting these alternative libraries. Unfortunately they are not plug and play replacements.

UnoCSS: this essentially allows you to create your -own- Tailwind-like utility system. But would not include any of the utility classes used within our components by default. Level of effort would be too high to support this right now.
Windi - this is interesting because it's mirroring the utility classes from Tailwind. Unfortunately they still don't have feature parity with Tailwind v3. By the time Tailwind v4 rolls out they'll most likely be two versions behind. Worth keeping an eye on, but not in a state we could support this yet.

I'd be happy to chat with anyone that would want to take a means for supporting these or similar tools in the future though. Their interesting in concept for sure!

UnoCSS actually comes with a lot of presets including a Tailwind / Windi compact preset (https://github.com/unocss/unocss/tree/main/packages/preset-wind) that is compatible with Tailwind in a lot of ways. Especially with UnoCSS it's absolutely worth considering as the DX improvements are superp. It's the fastest utility css framework out there.

The way UnoCSS works is interesting, a better idea, the workflow, efficiency and DX are the advantages.
Flowbite, Daisy UI and others had UnoCSS presets, but skeleton was missing...
I was searching to find the best UI components kit, and after comparisons I found Skeleton to be a bit better than others.

I'd ask you guys to please avoid posting on closed issues. I'll get notified of them, but no one else.
We investigated Windi, but found it lacking in many ways. It's not a plug and play replacement for Tailwind. I was determined that it doesn't even provide parity with Tailwind v2, much less v3. We would end up limiting Skeleton to support it, and we would have many extra hoops to jump through.
Per Uno, again, not a plug and play replacement. It's a "build your own Tailwind" solution, which sounds fine on paper. But would again be very detrimental to our effort as we need something turnkey and ready to go. Tailwind provides this. Uno does not.
Furthermore, keep in mind that Skeleton is managed by a small team, with myself being the only full time contributor. We can't support every feature on a whim. Rather, if you wish to see a feature added, be the change you wish to see and submit a PR. Though with something of this scale I'd recommend joining Discord so we can discuss the details and plan ahead of time.
For now Windi is not a part of our roadmap and there's no plans to add it. Thanks for your interest though.

repo: skeletonlabs/skeleton


text:
Wrong styles advertised for several Tailwind elements

Link to the Page
https://www.skeleton.dev/elements/chips?tab=classes https://www.skeleton.dev/elements/cards?tab=classes
Describe the Issue (screenshots encouraged!)
The Chip and Card style documentation include classes that are not actively provided by Skeleton and can confuse users.

Please compare the actual implementation for chips:
https://github.com/skeletonlabs/skeleton/blob/master/packages/plugin/src/styles/components/chips.css
and Cards:
https://github.com/skeletonlabs/skeleton/blob/master/packages/plugin/src/styles/components/cards.css


text:
Fix typo in the Modal utilities comment

just fixed a typo

Thanks for your contribution @M3DZIK


text:
Fractional Differencing support in TimeSeriesDifferentiator

Many time series are both non stationary and have a long memory. For these types of processes an order 1 difference removes a lot of the useful information for forecasting. This can be overcome with fractional differencing e.g.:
https://github.com/fracdiff/fracdiff
Can fractionally differencing be supported by TimeSeriesDifferentiator?

Hi @aptperson,
Thanks for the suggestion. At skforecast we are always happy to try new ideas.
I am not familiar with fractional differentiation. Do you know what the process is for undoing it once the predictions have been generated? This would be key to integrating it into skforecast.

authors: JoaquinAmatRodrigo aptperson

repo: skforecast/skforecast


text:
Readme typos

Readme file contains small typos with regard to the installation process:
Line 104 and 134:
`pip3 install -r requiremetns.txt`

Should be changed to:
`pip3 install -r requirements.txt`

Thanks for the feedback. fixed now

repo: skhatiri/Aerialist


text:
feat: Add delete market to keeper, for future proofing

Add delete method to x/mm keeper, so that in the future we can use this to remove markets in upgrade handlers.
I haven't added any actual handling/msgs since we currently don't want to do this via  on chain txn.
closes BLO-1387

is there a possible error scenario here?

market gets deleted
somewhere down the line an authority wants to add a market back, which calls the AfterMarketCreated hook
AfterMarketCreated fails saying CurrencyPair already exists, even though it was deleted from MM?

do we also need a AfterMarketDeleted hook?

I think we don't want to manage that in hooks. I expect that the DeleteMarket calls will all only happen in upgrade handlers for now, and I would also expect that any x/oracle state should be cleaned up at the same time via RemoveCurrencyPair calls.

is there a possible error scenario here?

market gets deleted
somewhere down the line an authority wants to add a market back, which calls the AfterMarketCreated hook
AfterMarketCreated fails saying CurrencyPair already exists, even though it was deleted from MM?

do we also need a AfterMarketDeleted hook?

I think we don't want to manage that in hooks. I expect that the DeleteMarket calls will all only happen in upgrade handlers for now, and I would also expect that any x/oracle state should be cleaned up at the same time via RemoveCurrencyPair calls.
cc @technicallyty lmk if you agree or not.

sounds fine to me. maybe lets throw a comment on the method to warn callers to clean up x/oracle state?

authors: Eric-Warehime technicallyty

repo: skip-mev/slinky


text:
Fix flaky BalancerHandlerTest#testReport

BalancerHandlerTest > testReport() FAILED
[2529](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2530)
    org.opentest4j.AssertionFailedError: expected: not equal but was: <0>
[2530](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2531)
        at app//org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:39)
[2531](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2532)
        at app//org.junit.jupiter.api.AssertNotEquals.failEqual(AssertNotEquals.java:276)
[2532](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2533)
        at app//org.junit.jupiter.api.AssertNotEquals.assertNotEquals(AssertNotEquals.java:96)
[2533](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2534)
        at app//org.junit.jupiter.api.AssertNotEquals.assertNotEquals(AssertNotEquals.java:88)
[2534](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2535)
        at app//org.junit.jupiter.api.Assertions.assertNotEquals(Assertions.java:1977)
[2535](https://github.com/skiptests/astraea/runs/8078624618?check_suite_focus=true#step:5:2536)
        at app//org.astraea.app.web.BalancerHandlerTest.testReport(BalancerHandlerTest.java:44)

我先處理這個

@chaohengstudent 感謝

repo: skiptests/astraea


text:
비밀번호 초기화 시 이메일 미발송

이메일 발송 원리 확인해보기

현재 npc.skku.edu의 SMTP 설정이 되어 있는지 궁금합니다.

현재 npc.skku.edu의 SMTP 설정이 되어 있는지 궁금합니다.

설정이 안 되어있어서 우선 제 메일로 SMTP 설정했습니다. NPC 메일 계정 파서 수정할 예정입니다.

설정이 안 되어있어서 우선 제 메일로 SMTP 설정했습니다. NPC 메일 계정 파서 수정할 예정입니다.

설정이 안 되어있어서 우선 제 메일로 SMTP 설정했습니다. NPC 메일 계정 파서 수정할 예정입니다.

현재 로컬환경에서 admin 접근이 안되서 그런데, npc.skku.edu을 admin으로 접속시 smtp 설정이 가능한가요??

설정이 안 되어있어서 우선 제 메일로 SMTP 설정했습니다. NPC 메일 계정 파서 수정할 예정입니다.

현재 로컬환경에서 admin 접근이 안되서 그런데, npc.skku.edu을 admin으로 접속시 smtp 설정이 가능한가요??

Admin에서 SMTP Config 설정만 해주면 정상적으로 이메일 발송이 되는 것 같습니다.

Admin에서 SMTP Config 설정만 해주면 정상적으로 이메일 발송이 되는 것 같습니다.

authors: Jeongcc Just4Study dotoleeoak

repo: skku-npc/skku-coding-platform


text:
Sketch crashes when closing plugin with --run flag active

Steps to reproduce:

Create a project via skpm create my-plugin-name --template=skpm/with-webview
Open package.json and update the start command to include the --run flag. E.g. "start": "skpm-build --watch --run"
Run npm run start
Click the "x" button to close plugin

Result:
Sketch Crashes
I've attempted to copy this repo on multiple machines, and am able to reproduce the bug consistently. Plugin sometimes crashes when closing standard builds as well, but not able to reproduce 100% of the time.... issue might be related, and logs seem consistent. Figured this bug might indicate a larger problem 🤷♂
Running:
MacOS 10.14.2
Sketch 54.1
Great work on this package though. API is very intuitive and overall easy to use 🙌
Logs for reference:
Exception Type:  SIGSEGV
Exception Codes: SEGV_MAPERR at 0x1e521ab55da8
Crashed Thread:  0

Application Specific Information:
Selector name found in current argument registers: release

Thread 0 Crashed:
0   libobjc.A.dylib                      0x00007fff72ed5a1d objc_msgSend + 29
1   Foundation                           0x00007fff49274a11 empty + 58
2   Foundation                           0x00007fff491472d8 -[NSConcreteMapTable removeAllItems] + 47
3   CocoaScript                          0x00000001052f9924 0x1052e6000 + 80164
4   CocoaScript                          0x00000001052f9199 0x1052e6000 + 78233
5   CocoaScript                          0x00000001052fb64b 0x1052e6000 + 87627
6   SketchPluginManager                  0x0000000105cebbc9 0x105ce8000 + 15305
7   SketchPluginManager                  0x0000000105cead80 0x105ce8000 + 11648
8   SketchPluginManager                  0x0000000105cebaed 0x105ce8000 + 15085
9   SketchPluginManager                  0x0000000105cefb87 0x105ce8000 + 31623
10  Foundation                           0x00007fff49125105 __NSFireDelayedPerform + 433
11  CoreFoundation                       0x00007fff46d94edd __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
12  CoreFoundation                       0x00007fff46d94a90 __CFRunLoopDoTimer + 859
13  CoreFoundation                       0x00007fff46d945d0 __CFRunLoopDoTimers + 333
14  CoreFoundation                       0x00007fff46d7581b __CFRunLoopRun + 2176
15  CoreFoundation                       0x00007fff46d74d48 CFRunLoopRunSpecific + 463
16  HIToolbox                            0x00007fff4600bab5 RunCurrentEventLoopInMode + 293
17  HIToolbox                            0x00007fff4600b7eb ReceiveNextEventCommon + 618
18  HIToolbox                            0x00007fff4600b568 _BlockUntilNextEventMatchingListInModeWithFilter + 64
19  AppKit                               0x00007fff442c6363 _DPSNextEvent + 997
20  AppKit                               0x00007fff442c5102 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1362
21  AppKit                               0x00007fff442bf165 -[NSApplication run] + 699
22  AppKit                               0x00007fff442ae8a3 NSApplicationMain + 780
23  libdyld.dylib                        0x00007fff73fb2ed9 start + 1

It is a larger problem indeed. It will require Sketch 56 and a major version of skpm (but it has nothing to do with this library 😄)

Ahh noted. Is there an open bug I can follow tracking progress on this? I'm not sure if the inconsistent crashing I've experienced on standard builds is related, but logs lead me to believe it might be. Otherwise I'll just wait for Sketch 56 and next skpm :)
Thanks again for the great work and timely responses.

The new skpm version has been released yesterday but it won't do anything until Sketch 56

Got it. I'll work around the problem till Sketch 56 then 🙂 Thanks again !

authors: mathieudutour rodomeista

repo: skpm/sketch-module-web-view


text:
Rnhatch skuid d3

New directory under pages with a Skuid site used to show off how to create D3 visualizations in Skuid.  The directory has the following:

Zip file of all metadata.
Directory of json files used for datasources
Directory of images for app index page.

I'm closing this PR.  This documentation is not viable until we deliver custom components in V2.  The Branch will persist and comments will be adressed when that time comes.

repo: skuid/skuid-labs


text:
Allowing sanitize to work recursively

Fixes #167

Hello @multiwebinc
Thanks a lot for your contribution.
Can you paste an example form to test this new change?
Thank you.

@skydiver Any form that has array elements, like
<input type="checkbox" name="condiments[]" value="ketchup">
<input type="checkbox" name="condiments[]" value="mustard">
<input type="checkbox" name="condiments[]" value="relish">

Thanks @multiwebinc 💪

authors: multiwebinc skydiver

repo: skydiver/october-plugin-forms


text:
deserializeErrorBody() throws internal exceptions

Please complete the following information:

Library Version 2.0.5
Xiaomi 11T Pro

Describe the Bug:
deserializeErrorBody() extenstion throws all internal exceptions, for example in case of any decoding-specific error - SerializationException if @Serializable data class does not match with backend answer.
Expected Behavior:
deserializeErrorBody returns null if the error body is empty. Maybe add try catch on internal json.decodeFromString() to catch serialization exceptions and return null in case of this exception.
I can create pull request with such implementation

Example:

FATAL EXCEPTION: main
Process: ..., PID: ...
kotlinx.serialization.json.internal.JsonDecodingException: Unexpected JSON token at offset 2: Encountered an unknown key 'error' at path: $
Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.
JSON input: {"error":"Backend: user ..."}

Hey @KovshefulCoder, sorry for the late response. As you said, the error body model must match your backend error body JSON model and its expected result.

Yes, it should certainly match the JSON model to be converted into a @Serializable data class. However, I thibk that since we are discussing within the context of a library that allows working with the results of any request through a simple API, this case should also be converted into ApiResponse to enable processing it with the Sandwich API.

@skydoves sorry for ping. What do you think?

So, wrote down extension for this

Looks very good to me, @KovshefulCoder. Thanks for sharing your experience with this community. Flexibility is one of the biggest strengths and features of this library, so it's good to see you make your custom extensions and resolve issues in dedicated ways.

authors: KovshefulCoder skydoves

repo: skydoves/sandwich


text:
show question by url

how to show question like : https://leetcode-cn.com/problems/liang-ge-lian-biao-de-di-yi-ge-gong-gong-jie-dian-lcof/
dont know this question number is ?
can leetcode-cli show question by url suffix ?

how to show question like : https://leetcode-cn.com/problems/liang-ge-lian-biao-de-di-yi-ge-gong-gong-jie-dian-lcof/
dont know this question number is ? can leetcode-cli show question by url suffix ?

大佬好，哈哈哈，这个插件是不是没法用呀，我每次输入登录都是无效密码，另外我就是看你的慕课视频入门的vim，好有缘

@zhenchuanzhiaa  可以用的，你试试安装 leetcode-cn 插件，然后 配置文件设置自动登录。我一直在用

authors: PegasusWang zhenchuanzhiaa

repo: skygragon/leetcode-cli


text:
Unable to process android.os.AsyncTask class

version : 1.1.0
error :
private class DecodeTask extends AsyncTask<String, Void, Void> {
private DecodeTask() {
}
    /* access modifiers changed from: protected */
    /* JADX WARNING: Removed duplicated region for block: B:21:0x005d A[SYNTHETIC, Splitter:B:21:0x005d] */
    /* JADX WARNING: Removed duplicated region for block: B:29:0x006a A[SYNTHETIC, Splitter:B:29:0x006a] */
    /* Code decompiled incorrectly, please refer to instructions dump. */
    public java.lang.Void doInBackground(java.lang.String... r6) {
        /*
            r5 = this;
            r0 = 0
            r1 = 0
            r6 = r6[r0]     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            java.lang.String r0 = "://"
            boolean r0 = r6.contains(r0)     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            if (r0 != 0) goto L_0x001d
            java.lang.StringBuilder r0 = new java.lang.StringBuilder     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            r0.<init>()     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            java.lang.String r2 = "file://"
            r0.append(r2)     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            r0.append(r6)     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            java.lang.String r6 = r0.toString()     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
        L_0x001d:
            java.net.URL r0 = new java.net.URL     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            r0.<init>(r6)     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            java.io.InputStream r6 = r0.openStream()     // Catch:{ Exception -> 0x004b, all -> 0x0049 }
            com.king.kvast.ImageItem r0 = com.king.kvast.ImageItem.this     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            android.graphics.Bitmap r2 = android.graphics.BitmapFactory.decodeStream(r6)     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            android.graphics.Bitmap unused = r0.mBitmap = r2     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            com.king.kvast.ImageItem r0 = com.king.kvast.ImageItem.this     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            com.king.kvast.ImageItem r2 = com.king.kvast.ImageItem.this     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            long r2 = r2.mInstance     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            r0.onPrefetched(r2)     // Catch:{ Exception -> 0x0044, all -> 0x0040 }
            if (r6 == 0) goto L_0x0065
            r6.close()     // Catch:{ Exception -> 0x0061 }
            goto L_0x0065
        L_0x0040:
            r0 = move-exception
            r1 = r6
            r6 = r0
            goto L_0x0068
        L_0x0044:
            r0 = move-exception
            r4 = r0
            r0 = r6
            r6 = r4
            goto L_0x004d
        L_0x0049:
            r6 = move-exception
            goto L_0x0068
        L_0x004b:
            r6 = move-exception
            r0 = r1
        L_0x004d:
            r6.printStackTrace()     // Catch:{ all -> 0x0066 }
            com.king.kvast.ImageItem r6 = com.king.kvast.ImageItem.this     // Catch:{ all -> 0x0066 }
            com.king.kvast.ImageItem r2 = com.king.kvast.ImageItem.this     // Catch:{ all -> 0x0066 }
            long r2 = r2.mInstance     // Catch:{ all -> 0x0066 }
            r6.onError(r2)     // Catch:{ all -> 0x0066 }
            if (r0 == 0) goto L_0x0065
            r0.close()     // Catch:{ Exception -> 0x0061 }
            goto L_0x0065
        L_0x0061:
            r6 = move-exception
            r6.printStackTrace()
        L_0x0065:
            return r1
        L_0x0066:
            r6 = move-exception
            r1 = r0
        L_0x0068:
            if (r1 == 0) goto L_0x0072
            r1.close()     // Catch:{ Exception -> 0x006e }
            goto L_0x0072
        L_0x006e:
            r0 = move-exception
            r0.printStackTrace()
        L_0x0072:
            throw r6
        */
        throw new UnsupportedOperationException("Method not decompiled: com.king.kvast.ImageItem.DecodeTask.doInBackground(java.lang.String[]):java.lang.Void");
    }
}

/* access modifiers changed from: protected /
/ JADX WARNING: Can't wrap try/catch for region: R(3:14|15|16) /
/ JADX WARNING: Code restructure failed: missing block: B:12:0x0063, code lost:
if (r4.mConnection != null) goto L_0x0075;
/
/ JADX WARNING: Code restructure failed: missing block: B:13:0x0066, code lost:
r5 = move-exception;
/
/ JADX WARNING: Code restructure failed: missing block: B:15:?, code lost:
r4.mListener.onFailed(r4.mId, r5, 404);
/
/ JADX WARNING: Code restructure failed: missing block: B:19:0x007c, code lost:
return null;
/
/ JADX WARNING: Code restructure failed: missing block: B:21:0x007f, code lost:
if (r4.mConnection != null) goto L_0x0081;
/
/ JADX WARNING: Code restructure failed: missing block: B:22:0x0081, code lost:
r4.mConnection.disconnect();
r4.mConnection = null;
/
/ JADX WARNING: Code restructure failed: missing block: B:23:0x0088, code lost:
throw r5;
/
/ JADX WARNING: Failed to process nested try/catch /
/ JADX WARNING: Missing exception handler attribute for start block: B:14:0x0068 /
/ Code decompiled incorrectly, please refer to instructions dump. /
public java.lang.String doInBackground(java.lang.String... r5) {
/
r4 = this;
r0 = 0
r5 = r5[r0]
r0 = 0
java.lang.String r1 = "GET"
java.net.HttpURLConnection r1 = r4.connect(r5, r1)     // Catch:{ Exception -> 0x0068 }
r4.mConnection = r1     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r1 = r4.mConnection     // Catch:{ Exception -> 0x0068 }
int r1 = r1.getResponseCode()     // Catch:{ Exception -> 0x0068 }
r2 = 200(0xc8, float:2.8E-43)
if (r1 == r2) goto L_0x0054
com.king.kvast.http.HttpTask$HttpListener r1 = r4.mListener     // Catch:{ Exception -> 0x0068 }
int r2 = r4.mId     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r3 = r4.mConnection     // Catch:{ Exception -> 0x0068 }
int r3 = r3.getResponseCode()     // Catch:{ Exception -> 0x0068 }
r1.onFailed(r2, r5, r3)     // Catch:{ Exception -> 0x0068 }
java.lang.StringBuilder r1 = new java.lang.StringBuilder     // Catch:{ Exception -> 0x0068 }
r1.()     // Catch:{ Exception -> 0x0068 }
java.lang.String r2 = "Server returned HTTP "
r1.append(r2)     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r2 = r4.mConnection     // Catch:{ Exception -> 0x0068 }
int r2 = r2.getResponseCode()     // Catch:{ Exception -> 0x0068 }
r1.append(r2)     // Catch:{ Exception -> 0x0068 }
java.lang.String r2 = " "
r1.append(r2)     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r2 = r4.mConnection     // Catch:{ Exception -> 0x0068 }
java.lang.String r2 = r2.getResponseMessage()     // Catch:{ Exception -> 0x0068 }
r1.append(r2)     // Catch:{ Exception -> 0x0068 }
java.lang.String r5 = r1.toString()     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r1 = r4.mConnection
if (r1 == 0) goto L_0x0053
java.net.HttpURLConnection r1 = r4.mConnection
r1.disconnect()
r4.mConnection = r0
L_0x0053:
return r5
L_0x0054:
com.king.kvast.http.HttpTask$HttpListener r1 = r4.mListener     // Catch:{ Exception -> 0x0068 }
int r2 = r4.mId     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r3 = r4.mConnection     // Catch:{ Exception -> 0x0068 }
byte[] r3 = r4.getResponseData(r3)     // Catch:{ Exception -> 0x0068 }
r1.onGetSuccess(r2, r5, r3)     // Catch:{ Exception -> 0x0068 }
java.net.HttpURLConnection r5 = r4.mConnection
if (r5 == 0) goto L_0x007c
goto L_0x0075
L_0x0066:
r5 = move-exception
goto L_0x007d
L_0x0068:
com.king.kvast.http.HttpTask$HttpListener r1 = r4.mListener     // Catch:{ all -> 0x0066 }
int r2 = r4.mId     // Catch:{ all -> 0x0066 }
r3 = 404(0x194, float:5.66E-43)
r1.onFailed(r2, r5, r3)     // Catch:{ all -> 0x0066 }
java.net.HttpURLConnection r5 = r4.mConnection
if (r5 == 0) goto L_0x007c
L_0x0075:
java.net.HttpURLConnection r5 = r4.mConnection
r5.disconnect()
r4.mConnection = r0
L_0x007c:
return r0
L_0x007d:
java.net.HttpURLConnection r1 = r4.mConnection
if (r1 == 0) goto L_0x0088
java.net.HttpURLConnection r1 = r4.mConnection
r1.disconnect()
r4.mConnection = r0
L_0x0088:
throw r5
*/

@renkchina
It's impossible to find out the reason and fix the issue without affected APK and full class name. Please add detains and reopen the ticket

authors: renkchina sergey-wowwow

repo: skylot/jadx


text:
Petition for snapshot backwards compatibility

The current snapshot (serialization) feature requires template parameters for all the components. This is fine, except whenever I introduce a new component type, which happens fairly regularly, I get errors loading binaries that were saved before the addition. Due to the tests I'm doing, I cannot afford to rebuild the registry/scene everytime I add a new type. Also, I have to do a full capture of components since I serialize various entity values as well, so unless I'm mistaken continous snapshot is not an option. I'm hoping there's a workaround to this.
edit: Nope sorry, did a few more tests and the problem persists. Also the order of component template parameters matter as well... which is somewhat error prone.

Mmm interesting. I'd say that one can easily achieve it with a bit of reflection and without the snapshot stuff probably. Do you have any suggestions instead?

Do you mean serializing the registry without using snapshots? That's not impossible but that would mean manually maintaining serialized data and rebuilding each entity and component one by one on my part. Unless I'm mistaken, I cannot (de)serialize the data containters i.e. sparse sets directly. I really like the built in snapshot system because it does that for me and I only have to send the archive (I use cereal) and target component type parameters. It's just that it fails when the in and out type args list is incompatible.
It would be really nice if the snapshots can be deserialized in a way where the order doesn't matter or at the least where it can ignore types it cannot find in the binary. For example if the out snapshot captured  and the in snapshot expects <Position, Velocity> but cannot find Velocity storage, it would be nice if it just ignored the Velocity parameter, order regardless. An empty component storage is fine, as long as it doesn't throw a runtime error. It might require additional trailing data of a hash of existing types at most... and markers indicating the beginning and end of the registry if there aren't already. (I also serialize other data outside of registry scope in the same archive).
I'm afraid I cannot offer any more suggestions because I don't really know the specifics of how the snapshot actually de/serializes components and their types at the moment.

@Sedomanai  In a project of mine I've built a snapshot and snapshot-loader for entt  which should tick the boxes you mention above.
The principle is as follows: Serialization doesn't occur on a "component-major" order, but rather on an entity-major order (less efficient than entt-inbuilt-solution but that wasn't my primary concern).
For every entity, obtain a sequence of its components (you can create a handle h, call h.visit on it, obtain the meta_type and in the callback push a component-reference-wrapper to a vector of Any (which should be a small wrapper around meta_any which implements serialize for cereal)).
Every of the reflected components needs to have a type-identifier stored with it, so that it may later be attached correctly when de-serializing. As I register my types with human-readable identifiers I use exactly those identifiers for that purpose. Without such identifiers you are forced to rely on serialization-order, which, as you've noted, creates incompatibilities.
So when de-serializing this vector of components, you can read its type, and then emplace (or emplace_or_replace) it to the entity (the entity you have already deserialized at that point using:
auto e = entt::entity{};
archive(e);
reg.create(e); // entity-identifier is preserved

Side-note: I have no variadic templates in any of my serialization, and instead allow passing a ShouldSerializePredicate
which is just a function returning a bool for a const char* (again, my component-types are reflected with a string).
I hope I could give a general overview, I realize that for all of the details I would need pages.
If anyone's interested let me know, and I might actually upload my implementation - again, disclaimer that it's not optimized.
Here's a snippet from a registry serialized to json:
{
    "e_count": 2,
    "0": {
        "e": 0,
        "components": [
            {
                "has_any": true,
                "type": "arch",
                "arch": {
                    "name": "cube"
                }
            },
            {
                "has_any": true,
                "type": "color",
                "color": {
                    "color": {
                        "x": 0.6000000238418579,
                        "y": 0.6000000238418579,
                        "z": 0.6000000238418579,
                        "w": 1.0
                    }
                }
            },
            {
                "has_any": true,
                "type": "mesh",
                "mesh": {
                    "name": "cube"
                }
            }
        ]
    },
    "1": {
        "e": 1,
        "components": [
            {
                "has_any": true,
                "type": "arch",
                "arch": {
                    "name": "food"
                }
            },
            {
                "has_any": true,
                "type": "consumable",
                "consumable": {
                    "nutrition": 0.5
                }
            }
        ]
    }
}

I've uploaded my implementation to https://github.com/LeonFretter/entt_snapshot - hope it might be helpful to someone :)

Thank you very much LeonFretter. I'll look into it and see if I can apply it to my project but in any case I'm grateful to you for sharing your precedent work

@Sedomanai I'm looking into the issues that are still open. I must admit that I don't know exactly what the request is here.
Can I ask you to be more explicit? For example, with a proposed solution or api. As it stands, it's a little vague at the moment. Thanks.

Closing this because it has been inactive for a couple of weeks now and I've not enough details.

authors: LeonFretter Sedomanai skypjack

repo: skypjack/entt


text:
Conan: Add CI setup

This pull request will upload entt Conan recipes automatically when new git tags are getting created.
Todo:
1. Credentials
Please add the following credentials in the Travis UI:

CONAN_UPLOAD: API URL to your Conan repository (most likely Bintray)
CONAN_LOGIN_USERNAME: Your Conan repository username (e.g. Bintray username)
CONAN_PASSWORD Your Conan repository password (e.g. Bintray API key)

2. Merge this pull request
3. After a new release happened: Add Bintray meta data
Go to Bintray entt package and fill in meta data (license, url...).
4. Request inclusion in conan-center on the Bintray entt package site

This is a sub-set of https://github.com/bincrafters/conan-templates-upstream
If in the future something needs changing it should be first looked into this repository if there are already fixes and if not it would be nice if they could be contributed back :)

How it can look like:
https://bintray.com/croydon/conan/entt%3Askypjack
https://github.com/Croydon/entt/releases

Coverage remained the same at 100.0% when pulling a16a52a0e20805c1dd9e409904a71b8101bb1223 on Croydon:croydon/conan into 41750c3639aac3643d06bf4406827da9d843c5be on skypjack:master.

I'm a bit busy, I apologize. I think I'll merge this and create a dedicated tag tomorrow or the day after tomorrow. Thank you for your help so far.

authors: Croydon coveralls skypjack


text:
improve CMakeLists.txt

本补丁是对 https://github.com/skywind3000/kcp/pull/376 的一个补充（考虑到 https://github.com/skywind3000/kcp/pull/376 在增加了动态库 install 的同时，未保留原来的静态库 install）。

将 CMake 最小版本需求从 2.6 升到了 2.8.12，以消除构建过程中的 deprecation warning；

新增三个选项，以给用户对构建过程更多控制：

KCP_BUILD_SHARED_LIBS：是否作为动态库构建，默认为 OFF，以与 BUILD_SHARED_LIBS 的默认保持一致；
KCP_BUILD_INSTALL：是否生成 install target；
KCP_BUILD_TESTS：是否构建测试项目；

对于 KCP_BUILD_INSTALL、KCP_BUILD_TESTS：

如果 KCP 是作为一个 Top project 来构建，则这两个开关项默认打开；
如果 KCP 是作为一个子项目来构建（比如，通过 add_subdirectory），则这两个开关项默认关闭；

完善 Windows 平台动态库构建支持；
在 Windows 平台上生成动态库要么需要通过 __declspec(dllexport) 来修饰要导出的函数符号，要么需要通过一个 DEF 文件 来声明所有要导出的符号。使用前一种方案可能需要在 ikcp.h 中加一段宏定义，所以我这里选择了使用一个 DEF 文件来声明所有要导出的符号。

完善 Windows 平台动态库的 install；

本补丁与 https://github.com/skywind3000/kcp/pull/376 不兼容的部分：

不再同时构建静态库与动态库，而是让用户能够在二者之间选择其一；

可以进一步完善的地方：
目前，我是直接在 CMakeLists.txt 里将导出的符号信息写入到一个临时的 exports.def 中的。如果用户不使用 CMake（比如：用户用 nmake），为了给予其方便，可考虑将 exports.def 提交到代码库里。

多谢

啊这！@skywind3000 大佬也太快了。我刚刚又推送了一次，正在解释第二次推送的原因：

今天又想了一下，感觉昨天的提交中对于 subproject 的特殊处理的逻辑对于 KCP 这样的库太重了（考虑到 KCP 核心代码也仅有两个文件），且有些偏离主旨（完善动态库、静态库编译），所以就移除了。如果大佬觉得简化后的版本可以接受，我可以 squash 成一个提交。

题外话：今天发现 CMake 3.21 里新增了 https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html。


text:
New applications aren't allowed to send token in query parameters any more

https://api.slack.com/changelog/2020-11-no-more-tokens-in-querystrings-for-newly-created-apps
Indeed, I can use the same token to send a message if I put the token in the header but this crate wants to put it in the query itself.
This gives a confusing invalid_auth message.

Below is a dirty hack that rips out token and puts it in header. You can't keep it in the params even if you have the header present.
/// Work-around for <https://github.com/slack-rs/slack-rs-api/issues/107>.
struct AuthClient {
    inner: Client,
}

impl AuthClient {
    pub fn new() -> Result<Self, reqwest::Error> {
        Ok(Self {
            inner: slack_api::default_client()?,
        })
    }
}

#[async_trait::async_trait]
impl SlackWebRequestSender for AuthClient {
    type Error = <Client as SlackWebRequestSender>::Error;

    async fn send<I, K, V, S>(&self, method: S, params: I) -> Result<String, Self::Error>
    where
        I: IntoIterator + Send,
        K: AsRef<str>,
        V: AsRef<str>,
        I::Item: std::borrow::Borrow<(K, V)>,
        S: AsRef<str> + Send,
    {
        let mut url = reqwest::Url::parse(method.as_ref()).expect("Unable to parse url");

        let mut token = None;

        let params = params
            .into_iter()
            .filter_map(|p| {
                let (k, v) = p.borrow();
                if k.as_ref() == "token" {
                    token = Some(v.as_ref().to_owned());
                    return None;
                }
                Some((k.as_ref().to_owned(), v.as_ref().to_owned()))
            })
            .collect::<Vec<_>>();

        url.query_pairs_mut().extend_pairs(params);

        let mut req = self.inner.get(url);
        if let Some(token) = token {
            req = req.bearer_auth(token);
        };

        Ok(req.send().await?.text().await?)
    }
}

repo: slack-rs/slack-rs-api


text:
Change type hints for bot related fields in AuthorizationResult to optional

Thanks for your suggestion @shaydewael !
Category (place an x in each of the [ ])

[x] slack_bolt.App and/or its core components
[x] slack_bolt.async_app.AsyncApp and/or its core components
[ ] Adapters in slack_bolt.adapter
[ ] Document pages under /docs
[ ] Others

Requirements (place an x in each [ ])
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've run ./scripts/install_all_and_run_tests.sh after making the changes.

Codecov Report

Merging #101 into main will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #101   +/-   ##
=======================================
  Coverage   90.14%   90.14%
=======================================
  Files         133      133
  Lines        3775     3775
=======================================
  Hits         3403     3403
  Misses        372      372

Impacted Files
Coverage Δ

slack_bolt/authorization/authorization_result.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

authors: codecov-commenter seratch

repo: slackapi/bolt-python


text:
Add support for Dialog Select Datasource.

Add support for most recent changes to Dialog Select component.
I created an issue to keep track of this change:
Add support for Dynamic Select in Dialogs. #439

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

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

@favalos Thanks for taking the time to report the issue and make this PR!
To sign our CLA, could you follow the instructions below?
git reset HEAD~1
git add . -v
git config user.email {your github email address}
git commit -m'{your commit message}'
git push origin master

Once you've signed the CLA, I'm happy to fix the above by adding more commits in addition to your changes for you.

@seratch I did the changes requested. There are only four files changes in the pull request now.
Thanks and let me know if I can help to add more test cases.

I've merged your change by https://github.com/slackapi/java-slack-sdk/commit/0bd925ff826a537739bd62808374683b7688e18e and https://github.com/slackapi/java-slack-sdk/commit/a14cb6303a6c040c2bf41092065b472b60779a0a
Thanks a lot for your contribution!

authors: CLAassistant favalos seratch

repo: slackapi/java-slack-sdk