Category-Long category is truncated although space available

Details

here we are fixing android long category is truncated
Fixed Issues

$ https://github.com/Expensify/App/issues/30222
PROPOSAL: https://github.com/Expensify/App/issues/30222#issuecomment-1776419587
Tests

Launch app
Tap on Workplace chat
Tap plus icon near compose
Enter an amount
Tap next
Tap show more
Tap category
Select a long category (need to be added in the old dot) ex: "This: is: a: subcategory: with: lots: and: lots: of: levels: needALongerWordHereToTriggerTheLines"
Verify that category name take full space

[x] Verify that no errors appear in the JS console

Offline tests

Same as test
QA Steps

Same as test

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/16595846/4d00f620-3021-483b-802d-1f9b2781fd1c

Android: mWeb Chrome

https://github.com/Expensify/App/assets/16595846/3a13d353-32e0-40aa-b9fa-51ad458c2e71

iOS: Native

https://github.com/Expensify/App/assets/16595846/e10f067b-507d-4a4d-82f2-cd95b7516ab7

iOS: mWeb Safari

https://github.com/Expensify/App/assets/16595846/ecc205a9-913c-409a-a4ac-a694c9b2e37d

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/16595846/0faf7e06-22c2-438d-9aa0-3f30077ee879

MacOS: Desktop
https://github.com/Expensify/App/assets/16595846/c6ee7c69-b0a7-4e37-98e9-3318f36d72ec

@pradeepmdk Please add a test step for verifying the expected result.

@pradeepmdk I would also add an initial setup step that we need to first add a long category manually in oldDot (at least that's how I did it!) to a specific workspace, and then make the money request from that workspace.

@jjcoffee i updated the test case. actually in my old account i don't have access to create the category. if you know can you share me the steps. i tried based on this md https://github.com/Expensify/App/pull/30358

@pradeepmdk The verify step should be that the category name fills all available space - it can truncate if it's too long! For the category, just write that a category with a long name (and your example) needs to be added first in oldDot - no need to explain how that's done.

@jjcoffee updated

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/lakchote in version: 1.3.94-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/lakchote in version: 1.3.94-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/lakchote in version: 1.3.95-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/puneetlath in version: 1.3.95-9 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


mediaPlaybackRequiresUserAction property

PR for #89

@alinz what do you think?

@alinz bump!

Thanks.


Multiple path arguments (as array) to route

Is your feature request related to a problem? Please describe.
Support for arrays of paths as the path argument to a route
Describe the solution you'd like
Currently only single paths are supported. ExpressJS supports arrays of paths to a route, so that multiple paths can resolve to the same route without needing each route to be specified separately.
Describe alternatives you've considered
The alternative is as now to create separate routes for each alternative path.
Additional context
Add any other context or screenshots about the feature request here.
app.get( [ '/child', '/other-child' ], ( req, res ) => {
	res.send( `${req.method || 'GET' } request to homepage` )
} )

vs
app.get( '/child', ( req, res ) => {
	res.send( `${req.method || 'GET' } request to homepage` )
} )

app.get( '/other-child', ( req, res ) => {
	res.send( `${req.method || 'GET'} request to homepage` )
} )

when I tried to implement it I had TS type conflicts, so PR with this feature is welcome

Hi, is this issue still open and relevant? Would like to help resolve if so

@jasonghent98 yes it's still relevant, a PR with this enhancement is very welcome

Thank you!


Release v. 2.1.0

Initial release notes:

bumped version of gradle build tools to 1.3.0
disabled WIFI_CONNECTED status when enableInternetCheck() method is called. Read more about this change in appropriate section of README.md file.

Version is bumped in #91.

Archives are uploaded to Maven Central Repository.
Now, we are waiting for Maven Sync.
After Maven Sync:

update library version in README.md
create GitHub release

There were small changes related to fix of the unit tests in https://github.com/pwittchen/NetworkEvents/commit/2f6999c5cd45ba220f615580e64bfee9e6cc8089 after uploading archives
After releasing 2.1.0, we should release 2.1.1 immediately to include this fix.


Add simulation settings and assumptions to docs

e.g.

discrete time simulation (byslot)

No invalid message

assuming every validator can verify the messages

Bounded double vote (multiple blocks at the same height) (in CBC, bounded equivocation)

assuming we can bound the Byzantine faults by economic incentives


Update get_model() import for django 1.9

This work in my fork but I only test it with Django 1.9.

Because of inactivity of the project and no answer of the author our team decide to fork it.


Types namespace is not imported correctly

Describe the bug
The Types namespace is not imported into frag1.generated.ts.

To Reproduce
Steps to reproduce the behavior:
https://github.com/stephenbunch/graphql-codegen-bugs/tree/bugs/types_import_nested_fragment

My GraphQL schema:

type Fruit {
    color: Color
}

enum Color {
    BLUE
    RED
}

type Query {
    fruit: Fruit
}

My GraphQL operations:

frag1.gql
fragment Frag1 on Fruit {
  ...Frag2
}

frag2.gql
fragment Frag2 on Fruit {
  color
}

My codegen.yml config file:

schema: schema.gql
documents: 'src/**/*.gql'

generates:
  src/types.generated.ts:
    plugins:
      - typescript

  src/:
    preset: near-operation-file
    presetConfig:
      baseTypesPath: types.generated.ts
    plugins:
      - typescript-operations
      - typescript-react-apollo

Expected behavior
The Types namespace should be imported.
Environment:

OS: macOS Big Sur 11.5.2
@graphql-codegen/cli: ^2.2.0
@graphql-codegen/near-operation-file-preset: ^2.1.4
@graphql-codegen/typed-document-node: ^2.1.4
@graphql-codegen/typescript-operations: ^2.1.5
@graphql-codegen/typescript-react-apollo: ^3.1.4
NodeJS: 15.14.0

Additional context
This bug only happens when the nested fragment lives in a separate file. If the fragments all live in the same file, this doesn't happen.

I believe this has been fixed with latest versions

Thanks, @CarsonF! I can confirm the issue is fixed.


Maven build failure VSCode

Hi I am trying to add database functionality into the plugin and wanted to compile/build the project using maven like you did.
But when I tried I am getting this error.
[ERROR] Failed to execute goal on project DynamicShop: Could not resolve dependencies for project me.sat7:DynamicShop:jar:2.11.8: Failed to collect dependencies at me.clip:placeholderapi:jar:2.9.2:
Could you help me out here, cause I think the git repo might be missing a settings.xml or smth else to not get this error on compiling your code.

I also tried, there were also many different errors

pom.xml updated. should be fixed now.


Pipeline input name in submit dialog cannot be edited

The name field in submit pipeline dialog is pre-populated to match the pipeline filename, as introduced by #943 , although it cannot be edited as expected

This should now be fixed in https://github.com/elyra-ai/elyra/pull/978


tests, networkpolicy: Add some tier1 http tests

What this PR does / why we need it:
To support calico certification, new network policy related tests that check HTTP port
connectivity were added:

Check deny all policy blocks HTTP connectivity between VMIs at specific ports
Check allow ports policy allow HTTP connectivity on those ports
Check alow some ports policy blocks HTTP connectivity at different ports

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/retest

/retest

rebased

It looks very good, but I'm a bit surprised at the coverage - it lacks any kind of access from outside the cluster, which, afaiu, is the whole point of the Ingress type - https://kubernetes.io/docs/concepts/services-networking/ingress/#what-is-ingress
While I understand this is out of scope of this PR, we should somewhere in time expand our coverage to test access from outside the cluster to these exposed services.
@EdDev / @AlonaKaplan this is related to what we've discussed this morning; I think this is the correct place to 'expand' the coverage to check access from the outside to exposed services.

After looking more carefully, I've understood that this Ingress has nothing to do with the Ingress type; it simply is a way to define rules on ingress / egress traffic, akin to security groups.
Sorry for misleading you.

rebased

Rebased and integrated with new functions under vmi_servers.go I have also refactor them a little to bypass LoggedIn function.

Removed commit related to binding mechanism replacement, instead of that the test suite just remove the interfaces so we can configure them with vmi.Option

Wrapping logic of assertVMIHasIPs with Eventually.

@EdDev about https://github.com/kubevirt/kubevirt/pull/4061#discussion_r489244243, previous test where alredy testing that we have some IPs before iterating them I have just move them as a pre-requisite, but we can remove if we want, I think @oshoval is against it.

@EdDev about #4061 (comment), previous test where alredy testing that we have some IPs before iterating them I have just move them as a pre-requisite, but we can remove if we want, I think @oshoval is against it.

before i had 1 concerm
now i have 2 ;]

the test should be as close to the ping, as it was before. we can even make it more atomic if we want,
we dont want to range an empty list and test nothing (there is a bug right now on sriov with kinda the same phenomenon maybe).
no need to Eventually, the ips should exists. if we will see in the future that they dont even after WaitVMReady, we can reconsider, so far we didnt see, and we do have a guard (at least had) near the operation itself.

addressing Ed's comments.

Removing assertVMIHasIPs checks.

Do an exhaustive check of IPs at HTTP connectivity, the optimization about stopping on first fail or success depending on expectation is not done since it make things more obscure and we don't gain too much.

Fixed tests/BUILD.bazel libvmi was missing there.

@oshoval refactored the pingHTTP so it's taking into account the opimization about failing fast.

make pull-kubevirt-generate happy.

Fixing bug at composeCommand

Fixed tcp vs http server bug (lame...)

Added back the IPs check at BeforeAll

Pushed changes to address Miguel's comments.

Thanks.
/lgtm

/lgtm

/cc @oshoval removed the last commit please re-review.

Thanks
/lgtm
please check with the involved reviewers, if needed, according your judgement

/lgtm

Refactored vmi_servers.go with @EdDev comments.

/approve
/hold
/retest
Looks good. Feel free to cancel the hold once you are done @qinqon

/hold cancel

/retest


Give proper folders or files to utils/helpers.

It's always nice to have a clear separation of the tools needed on a project.
Instead of dumping everything on the utils/helpers files, try to give those functions a real home.
Ex: If you have a collection of functions that deals with text, create a lib/text.js, for sets, create a file lib/sets.js and so on.

First thanks for this issue, I think that is a great idea it yours.

I implemented this advice on #44 where i'm working on the new version of fastexpress.


Turkey (changes - Turk Telekom)

Turk Telekom seems made changes as method 2 was working long time but suddenly method 4 was used on some sites. But in last 2-3 days method 4 is having issues also (I will send my wireshark dump to your mail.)
I tried with tunein.com

Method 4 is for passive DPI, which drops injection. Try:
-p -r -s --set-ttl 5


Suggestion: "Remote Inventory Interface" block

I'm really liking playing with the Ender IO inventory system, however I've discovered a flaw: there's no machine-/other-mod-accessible way to extract items out of the system. My proposal is a block with no GUI that exposes the inventory system as if its contents were contained within the block. An extra feature could be a filter slot enabling the block to expose only those items that match the filter. You could think of it as a machine variant of the Inventory Panel.
I would say you should make the remote awareness upgrade ignore this new block so you don't end up with a feedback loop.
Bonus suggestion: the Inventory Sensor block should have the ability to ignore NBT, damage, and/or metadata.

Connectors do that. Or I don't understand your issue.

wrong tracker. http://ideas.theideawall.com/EnderIO

Why is that page not listed on the website? Meanwhile there are other feature requests and suggestions on this tracker and the website's "suggestion" button leads here.
And, no, connectors don't expose the entire remote inventory system to a block. You can't attach an Integrated Dynamics inventory reader to an item conduit and have it read the contents of the whole system. Applied Energistics has the ME Interface that functions this way.

because the only person who has access to the website is away. And I have changed every other link but those on enderio.com that I'm aware of. I I missed one, please tell me where.


Add Vietnamese to Localization Plugin MapLocale class

We support name_vi in Mapbox Streets v8.3.
Seen in Mapbox Studio

The Localization Plugin's MapLocale class could stand to have Vietnamese added to it for convenient access/usage.
https://github.com/mapbox/mapbox-plugins-android/blob/master/plugin-localization/src/main/java/com/mapbox/mapboxsdk/plugins/localization/MapLocale.java#L110-L111
Reference pr is https://github.com/mapbox/mapbox-plugins-android/pull/575 where Japanese and Korean were added to the plugin.
cc as simple fyi @1ec5 @jcsg

Closing because it's a duplicate of https://github.com/mapbox/mapbox-plugins-android/pull/1098


Chylli/dist zilla6

Codecov Report

Merging #6 into master will decrease coverage by -0.44%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master       #6      +/-   ##
==========================================
- Coverage   79.68%   79.25%   -0.44%
==========================================
  Files           1        1
  Lines         192      188       -4
  Branches       32       32
==========================================
- Hits          153      149       -4
  Misses         28       28
  Partials       11       11

Impacted Files
Coverage Δ

lib/VolSurface/Utils.pm
79.25% <100%> (-0.44%)
:x:

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 d98a2bb...d11a66e. Read the comment docs.


Admin interface access control display broken

If an access control list contains a role not provided in the admin interface's list provider for roles, the interface fails to display the role but displays an empty field instead:

The problem appears on develop from 2020-10-15 and likely affects r/9.x

Related to #1798

PR #2112 fixes the event details UI. But the issue is still exists in upload dialog.
Reproduce steps:

Create a series with uncommon role, like 12345_Instructor or 12345_Learner
Run Video Upload dialog and select the series created before
In the access control tab you will see empty roles, like in screenshot above

I've updated the instructions to reproduce the issue. Step 0. is added to clarify the dependant configuration.

Closing as PR is merged now


Parent scale ignored if child doesn't have transform bundle

In normal bevy afaict a child entity is affected by parent transforms regardless of whether it has a transform bundle itself or not.  If it isn't present, it's as if the child had the default transforms.
Bevy Rapier seems to only respect the parent scale if the child has a transform bundle too.
Here's a small example:
use bevy::prelude::*;
use bevy_rapier3d::prelude::*;

fn main() {
    App::new()
        .insert_resource(ClearColor(Color::srgb(0xF9 as f32 / 255.0, 0xF9 as f32 / 255.0, 0xFF as f32 / 255.0)))
        .add_plugins(
            (DefaultPlugins, RapierPhysicsPlugin::<NoUserData>::default(), RapierDebugRenderPlugin::default()),
        )
        .add_systems(Startup, (setup_graphics, setup_physics))
        .run();
}

pub fn setup_graphics(mut commands: Commands) {
    commands.spawn(Camera3dBundle {
        transform: Transform::from_xyz(-30.0, 30.0, 100.0).looking_at(Vec3::new(0.0, 10.0, 0.0), Vec3::Y),
        ..Default::default()
    });
}

pub fn setup_physics(mut commands: Commands) {
    // Ground
    let ground_size = 200.1;
    let ground_height = 0.1;
    commands.spawn(
        (
            TransformBundle::from(Transform::from_xyz(0.0, -ground_height, 0.0)),
            Collider::cuboid(ground_size, ground_height, ground_size),
        ),
    );
    commands.spawn_empty().insert(RigidBody::Dynamic).insert(TransformBundle::from_transform(Transform {
        translation: Vec3::new(0., 10., 0.),
        scale: Vec3::new(0.5, 0.5, 0.5),
        ..Default::default()
    })).with_children(|commands| {
        commands.spawn_empty().insert(Collider::cuboid(1., 1., 1.));
    });
    commands.spawn_empty().insert(RigidBody::Dynamic).insert(TransformBundle::from_transform(Transform {
        translation: Vec3::new(5., 10., 0.),
        scale: Vec3::new(0.5, 0.5, 0.5),
        ..Default::default()
    })).with_children(|commands| {
        commands.spawn_empty().insert(TransformBundle::default()).insert(Collider::cuboid(1., 1., 1.));
    });
}

https://github.com/dimforge/bevy_rapier/discussions/441 Just found this, here's another user getting tripped up.

This also looks related: https://github.com/dimforge/bevy_rapier/issues/172


Add ClearButton to TextField

Implement only the function without setting CSS etc.

Codecov Report
Attention: 51 lines in your changes are missing coverage. Please review.

Comparison is base (99dca13) 62.73% compared to head (9db4c23) 68.85%.
Report is 78 commits behind head on main.

Files
Patch %
Lines

packages/treemap/src/treemap.tsx
0.00%
18 Missing :warning:

packages/textfield/src/TextArea.tsx
77.55%
11 Missing :warning:

packages/textfield/src/TextField.tsx
77.08%
11 Missing :warning:

packages/editablelabel/src/EditableLabel.tsx
91.66%
4 Missing :warning:

packages/textfield/src/ClearButtonProvider.tsx
93.22%
4 Missing :warning:

packages/dekamoji/src/dekamoji.tsx
85.71%
2 Missing :warning:

packages/style-bulma/src/timer.tsx
50.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #279      +/-   ##
==========================================
+ Coverage   62.73%   68.85%   +6.12%
==========================================
  Files          30       35       +5
  Lines        1119     1249     +130
  Branches      201      218      +17
==========================================
+ Hits          702      860     +158
+ Misses        417      389      -28

Flag
Coverage Δ

unittests
68.85% <79.43%> (+6.12%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Generate breakpoint classes with a mixin

The breakpoint classes in cardinal are all manually added for each breakpoint in the Less source. This makes updating classes pretty cumbersome and error prone as well as adding a lot of bloat to the source. I've written a mixin that generates these breakpoint classes so they only need to be written once.
It can be used like this:
.breakpoint-prefixes({
  .@{breakpoint-prefix}my-class{ background: red; }
});

to generate this CSS:
.my-class {
  background: red;
}
@media (min-width: 480px) {
  .xs-my-class {
    background: red;
  }
}
@media (min-width: 600px) {
  .sm-my-class {
    background: red;
  }
}
@media (min-width: 768px) {
  .md-my-class {
    background: red;
  }
}
@media (min-width: 960px) {
  .lg-my-class {
    background: red;
  }
}
@media (min-width: 1140px) {
  .xl-my-class {
    background: red;
  }
}
@media (min-width: 1380px) {
  .xxl-my-class {
    background: red;
  }
}

This pull request replaces 5,258 lines of Less with 316 while maintaining 100% functionally identical CSS output.

@lukechilds this looks great! ill take a deeper look when i have a free moment.

Awesome! If you build and do a diff on cardinal.css you can see nothing's changed (apart from the odd comment).

Nice job @lukechilds! Awesome contribution, seriously. :+1: :smiley:


correct small typo

Description & motivation
Just noticed a small typo in the documentation. Change "can also includes" to "can also include" :)

@hanianiani Nice catch :)


A way to group features or services to allow middleware to be applied to groups

Motivation
Using the OpenAPI generator loses a lot of expressivity on the server side. Once you're in generated-code-land, you lose access to the functionality you would be able to have with vanilla routes e.g. applying middleware to groups.
/// Before
final class AdminMiddleware: AsyncMiddleware
{
    func respond(to request: Request, chainingTo next: AsyncResponder) async throws -> Response {
        if request.auth.has(User.self) {
            if try await (UserService(request.db).user(from: request.auth).isAdmin {
                return try await next.respond(to: request)
            }
        }
        throw Abort(.forbidden, reason: "Admins only, fools")
    }
}
let adminProtected = app.grouped(AdminMiddleware())
adminProtected.group("api", configure: apiController)
func apiController(api: RoutesBuilder) {
    api.get("users") { req async throws -> [User] in
        try await UserService(req.db).allUsers
    }
    api.delete("user", ":name") { req async throws -> User in
        if let username = req.parameters.get("name") {
            try await UserService(req.db).deleteUser(username)
        }
    }
}

/// After
struct APIProtocolImpl: APIProtocol {
    // I am using a middleware with swift-dependency to have access to the request
    @Dependency(\.request) var req

    func getUsers(_ input: Operations.getUsers.Input) async throws -> Operations.getUsers.Output {
        // I would need to copy this block for every single route that would be behind AdminMiddleware
        guard try await req.auth.has(User.self), (UserService(req.db).user(from: req.auth).isAdmin else {
            return  .forbidden(.init("Admins only, fools"))
        }
        return try await .ok(.init(body: .json(
            .init(UserService(req.db).allUsers)
        )))
    }
}

Repeating the middleware logic for every single route that should be behind it can quickly grow completely untenable if you have middleware that is supposed to be in front of dozens or hundreds of endpoints.
However you can apply middleware to the routesBuilder you pass to the transport:
let transport = VaporTransport(
    routesBuilder: app.grouped(OpenAPIRequestInjectionMiddleware()).grouped(AdminMiddleware())
)

But we're artificially limited to one document, which means I can only apply a middleware if I'm willing to put it in front of all routes. I've heard that this project intends to implement authorization as part of the API spec, which would alleviate the problem in this specific example, but this isn't the only situation I would want to arbitrarily group routes for a middleware.
Proposed solution
Leverage the openapi-generator-config.yaml configuration file to generate code from multiple documents rather than just one. Let us supply a list of document names that will each generate a protocol with associated types. I envision it looking something like this:
generate:
    - types
    - server
documents:
    - api/admin.yaml
    - api/public.yaml

This config would look for an api/admin.yaml and an api/public.yaml document in the target. It would then generate two protocols: AdminAPIProtocol and PublicAPIProtocol. We could then do something like:
let requestAttached = app.grouped(OpenAPIRequestInjectionMiddleware())

let adminTransport = VaporTransport(routesBuilder: requestAttached.grouped(AdminMiddleware()))
let publicTransport = VaporTransport(routesBuilder: requestAttached)

let adminHandler = AdminAPIProtocolImpl()
let publicHandler = PublicAPIProtocolImpl()

try adminHandler.registerHandlers(on: adminTransport, serverURL: Servers.server1())
try publicHandler.registerHandlers(on: publicTransport, serverURL: Servers.server1())

try await app.execute()

If the documents list isn't specified in the config, we could default to the normal behavior of looking for an openapi.yaml document and generating a single protocol from that.
Alternatives considered
Ideally, we'd be able to integrate with some unified serverside middleware framework to let us specify middleware in generated-code-land. SSWG is supposed to be working on one, but the repo isn't even public, much less finished. In the meantime, the requirement to run middleware operations on every single route is extremely onerous and this seems like a major blocker to migrating large applications to use it.
Additional information
No response

I am aware that middleware could respond in a way that is undocumented, however that was already the case with whatever middleware is placed in front of the route builder (for instance the request injection middleware could respond with an undocumented response if it pleased).

If I understood your ask correctly, you can already achieve this by putting each document into a separate Swift module, and then having your executable attach the generated routes from both OpenAPI docs to the same server.

Maybe there could be a concept of a project-specific middleware, but we haven't done any thinking around this area.
Ideas and proposals are always welcome 🙂

@dannflor have you had a chance to think about this more since we last talked? If so, could you share a snippet of code that illustrates what you'd like to see?
Or, if you solve the issue another way, that's okay too and we can close this.

This remains a concern for me. The fact that I need to restructure my project and create a whole new module + openapi document each time I want to add any scoped middleware doesn’t seem scalable. What I’ve been doing to work around this is exactly that: creating new modules, as well as writing middleware that takes in an set of paths to match against so I can apply it universally but have it only affect certain paths. It works for now, but incurs a cost of repetitive hashing and matching for every request, erasing any efficiency gained by using Vapor’s Trie-based router. This project is planned to grow to hundreds or thousands of routes, and serve many concurrent requests, so I’m very hopeful for a solution that will scale better.
But as for what it will look like, I’m stumped. I think it should use the still forthcoming unified SSWG middleware interface. I think whatever we do to fix it could also look into addressing the fact we need to hack in the request injection using a task local middleware. I no longer think allowing multiple specs is a good enough solution. The answer could possibly lie within either that config.yaml or offering an api via the VaporTransport that looks like vapor’s builtin router and letting us register middleware the way we usually do it.
But if you want to avoid maintaining a bunch of custom code for all the different libraries’ versions of middleware, you should probably wait for the unified implementation to come out.

You're right that there's a lot of potential tie-in with the other efforts in the ecosystem, but I think we can still incrementally improve the experience for Swift OpenAPI Generator adopters. Let me get back to some of your points below.

Are there any plans to more cleanly support middleware, possibly by allowing the middleware to be documented and have their responses enforced by some sort of protocol as well?

No current plans, because it's not clear what that would look like. Currently, middlewares operate on raw HTTP requests and responses, that's the "runtime" layer, which is shared between all adopters of Swift OpenAPI Generator. What would you like this to look like? If you provide a snippet of OpenAPI, how would you like to express those constraints? (Note that OpenAPI doesn't have any concept of a middleware, it just documents HTTP operations in a transport-agnostic way.)

The fact that I need to restructure my project and create a whole new module + openapi document each time I want to add any scoped middleware doesn’t seem scalable. What I’ve been doing to work around this is exactly that: creating new modules, as well as writing middleware that takes in an set of paths to match against so I can apply it universally but have it only affect certain paths.

I think the latter solution is what I'd recommend - that's one of the reasons that operationId is one of the parameters of middlewares, to allow easy dynamic behavior switching. I think that's better than parsing the path and as you point out, will be much faster.

This project is planned to grow to hundreds or thousands of routes, and serve many concurrent requests, so I’m very hopeful for a solution that will scale better.

If I understand correctly, the concern here is about the number of categories of routes, rather than the number of routes themselves, right? If you only have two (admin and public), hopefully the number in each category won't impact the overall workflow.

But as for what it will look like, I’m stumped. I think it should use the still forthcoming unified SSWG middleware interface.

That's orthogonal here, whatever we end up doing with the SSWG middleware, we can already do with the OpenAPI middleware type - we just collectively need to agree first on what is it we want to do to help with your use case.

I think whatever we do to fix it could also look into addressing the fact we need to hack in the request injection using a task local middleware.

That's a fair concern - do you have ideas of how to make that better, while preserving the property of APIProtocol that it doesn't contain any network types nor has dependencies on the concrete framework, and for the protocol to be the same between the generated client and server?

I no longer think allowing multiple specs is a good enough solution.

Can you elaborate on why allowing multiple specs would be a problem? Isn't it a valid use case for a single server to implement APIs from multiple OpenAPI documents?

The answer could possibly lie within either that config.yaml or offering an api via the VaporTransport that looks like vapor’s builtin router and letting us register middleware the way we usually do it.

The tricky part here is that with Vapor, you manually register your handlers, and as part of that, you can inject middlewares at any level.
When the handlers are generated from an OpenAPI document, you don't register them by hand - so there isn't a similarly natural place to register your middlewares at an arbitrary level. If you have an API in mind that you'd like to see here, please share.

But if you want to avoid maintaining a bunch of custom code for all the different libraries’ versions of middleware, you should probably wait for the unified implementation to come out.

Just like we did when adopting swift-http-types, we're fully committed to adopting any SSWG-supported libraries that overlap with what is today implemented in swift-openapi-runtime. We just need to wait for any such package to exist and reach 1.0, since we already are at 1.0, so need to maintain API stability.
Thanks again for your insights, we want to improve things here for you, we just need your help arriving at what exactly you'd like to see.


Day_2 progress

16th Jan Log

Please add all commits in a single PR

I will create a single branch for each day and raise a PR right? my day 2
to day 7 were lagging behind and you said to raise single PRs for each day
that's why I raise it that way. Now that is on track I will be raising PR
for a single day, is it okay?
On Wed, Jan 26, 2022 at 7:23 PM Anurag @.***> wrote:

Merged #131 https://github.com/saiyam1814/DevOpsRoadmap2022/pull/131
into main.
—
Reply to this email directly, view it on GitHub
https://github.com/saiyam1814/DevOpsRoadmap2022/pull/131#event-5956831238,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMOQRCUPFSIXXYMWDMR2WTTUX74EXANCNFSM5M2HX7LA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

--
*Darshna *
Durgapur, West Bengal


Update CONTRIBUTING.md

Quick update to contributing doc

Codecov Report

Merging #601 (33eb78c) into main (8ca1282) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 33eb78c differs from pull request most recent head 32eff85. Consider uploading reports for the commit 32eff85 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files

@@           Coverage Diff           @@
##             main     #601   +/-   ##
=======================================
  Coverage   37.33%   37.33%
=======================================
  Files          76       76
  Lines        3059     3059
  Branches      611      611
=======================================
  Hits         1142     1142
  Misses       1917     1917


Workflow loop creates all pods at the same time if pods are in pending state

Summary
This Bug was already described as part of #5811.
When a workflow containing a loop is started and there are pending pods due to resource limits all pods are created at the same time.
If “parallelism” is set low enough to fit the available resource limits pods are only created if others are finished. I would expect the same behavior for pending state pods to avoid flooding the cluster in case of a huge number of loop items.
Diagnostics
What Kubernetes provider are you using?
Rancher
What version of Argo Workflows are you running?
3.0.4
What executor are you running? Docker/K8SAPI/Kubelet/PNS/Emissary
K8sapi
Did this work in a previous version? I.e. is it a regression?
not sure
Check out pevious ticket for Workflow YAML + logs.

Message from the maintainers:
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.

I think you're saying that if we have a loop, and pods are creating in the pending state, we should not create other pods until those first pods are complete?
I'm not sure this is possible, the Kubernetes API returns the new pod, and it will be in pending, but we may not know why it is in pending.
Parallelism is the right solution for limiting the number of running pods.

Yes, that's correct. But wouldn't it be correct to also limit the number of parallel pending pods?
Example:
A loop containing 10 pods is executed. Due to cpu limit only one pod can be executed at a time. But parallelism is set to two. Now all pods are generated at the same time.
When now the limit in the cluster is increased so that based on the cpu limit 10 pods will fit, wouldn't these pods be executed at the same time now even if parallelism is set to two?
I might be wrong about that - hadn't the chance to test it.

I'm not clear what you are saying on this. Could you please attach an example of your workflow?

Hi alexec, i just had a look. Unfortunately I couldn't test it fully but I think I might have been wrong. All items of the loop are in fact still displayed at the same time in the Argo UI. However this might be not a problem as the corresponding pods are not created. So I don't think that all steps are executed at the same time as soon sufficient resources are available.
I basically thought that every pending step in the UI represents a pod in the cluster and now K8s is caring whether it gets processed or not. Hence why I thought that Argo has no control anymore to ensure parallelism.
If you can confirm that his is wrong I think this ticket can be closed.


Release v1.1.1

:tada: This PR is included in version 1.2.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


When I move to step 2, the genes are passed over from genepanel and the variants are annotated, but nothing is shown in the view. Should we just pick a gene at random to display? And if genes have already been analyzed, rather than a random gene, we can show a gene that has an interesting variant?

When I move to step 2, the genes are passed over from genepanel and the variants are annotated, but nothing is shown in the view. Should we just pick a gene at random to display? And if genes have already been analyzed, rather than a random gene, we can show a gene that has an interesting variant


Add Footer to Entire Website

Describe the feature
We need to add a footer to the entire website to provide essential links and information for users. The footer should be consistent with the overall design and style of the website and should appear on all pages.
Tasks I want to do
The footer that includes the following elements:
Links to "About Us," "Contact Us," "Privacy Policy," and "Terms of Service."
Social media icons with links to our social media pages.
Copyright information.
Any other relevant information (e.g., address, phone number).
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I have checked the existing issues
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

hey i can fix this issue please assign it to me


TypeError: Cannot redefine property: default

Using Node 12.16.1, TypeScript 3.8.3,  and tslib 1.12.0 I'm seeing this error:
/Users/phensley/dev/cldr-engine/node_modules/tslib/tslib.js:237
        Object.defineProperty(o, "default", { enumerable: true, value: v });
               ^
TypeError: Cannot redefine property: default
    at Function.defineProperty (<anonymous>)
    at /Users/phensley/dev/cldr-engine/node_modules/tslib/tslib.js:237:16
    at Object.__importStar (/Users/phensley/dev/cldr-engine/node_modules/tslib/tslib.js:246:9)
    at Object.<anonymous> (/Users/phensley/dev/cldr-engine/packages/cldr-compiler/lib/cli/compiler/index.js:4:21)

Occurs when __importStar is called:
import * as yargs from 'yargs';
Transpiled to:
var yargs = tslib_1.__importStar(require("yargs"));

Ahh yeah, tslib 1.12.0 expects some emit concessions provided by TS 3.9 (namely hoisted export names) without which some stuff won't work as expected. We probably need to adjust our messaging/versioning.

Encounter this as well just now, my dev env broke. It was working ok since yesterday.
when I run my start script
"start": "node build/index.js"
I see this
`
Object.defineProperty(o, "default", { enumerable: true, value: v });
^
TypeError: Cannot redefine property: default
at Function.defineProperty ()
`
so basically every library that has tslib as dependency broke.
I am using
"typescript": "^3.9.2"
"sequelize": "^5.21.8"
so the issue above is triggered above by sequelize

Ahh yeah, tslib 1.12.0 expects some emit concessions provided by TS 3.9 (namely hoisted export names) without which some stuff won't work as expected. We probably need to adjust our messaging/versioning.

@weswigham if there's any breaking change introduced, it would be nice if a new release could be published with a major version update. This minor release broke a lot of packages that the community heavily depends on.
@DanielRosenwasser Please, consider reverting this release till the reasonable alternative is found.

I also noticed the same issue in my projects. Yesterday everything works as expected, I didn't make any packages updates. Today I rebuild my docker image and I got the following error:
/app/src/index.ts:141
export {EntityManager} from "./entity-manager/EntityManager";
        ^
TypeError: Cannot set property EntityManager of #<Object> which has only a getter
    at Object.<anonymous> (/app/src/index.ts:141:9)
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
    at Module.load (internal/modules/cjs/loader.js:1002:32)
    at Function.Module._load (internal/modules/cjs/loader.js:901:14)
    at Module.require (internal/modules/cjs/loader.js:1044:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (/app/src/commands/SchemaSyncCommand.ts:1:1)
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)

I'm pretty sure that this issue also is causing problems in typeorm package.

Same error with yargs import as import * as args from 'yargs'

I've installed tslib 1.11.2 directly as a dependency as it seems to fixed the issue for me so far
"tslib": "~1.11.2"
not sure if this works for other cases tho

1.13.0 should fix this and be available now.

Howdy everyone - if you're still working with TS <= 3.8, the new tslib version 1.13.0 should fix the issues you were having; it does not support live bindings, but should continue to work with both older and newer emit without a runtime error. The newly published tslib 2.0.0 has the contents of the former 1.12.0, and provides support for live bindings alongside TS 3.9+ emit; so nobody should be installing it by accident in existing projects anymore~ Sorry for the inconvenience everyone ❤

Hi
In case of expiriencing that try to npm i -g<EMAIL_ADDRESS>May be it is not a "true way" wanted way but this one can help i guess.

Had the same issue. This comment has a temporary solution.


Pre-projection for aggregation and join

We noted the aggregation function can only accept field and literal as args, and if there is computing like sum(col_a * col_b), a project node needs to added before aggregation.
Similar case for join. Only fields can be accepted as join keys.
Will Velox support args of expressions in aggregation or join?
Thanks.
Reference:
https://github.com/facebookincubator/velox/blob/main/velox/exec/HashAggregation.cpp#L76
https://github.com/facebookincubator/velox/blob/main/velox/core/PlanNode.h#L910-L920

@rui-mo As you noted the application needs to add a projection node before aggregation of join. This is by design.

OK, in Spark, the args of aggregation and join can be expressions, so we are wondering will Velox do the same thing in the future.

We do not plan to support this. Velox doesn't include an optimizer and expects the application to optimize the plan before passing it to Velox.


More intuitive Makefile

The first users of the deployment scripts noticed that the behavior of the task management commands (run-task, execute-command...) were somewhat counter-intuitive. This PR addresses that by:

making the output of the make commands more explicit
preventing users from creating duplicated VAST servers
use more explicit working for the command names
streamlining the behavior of execute-command by allowing the useage of a CMD variable, similar to run-lambda
base64 encode the CMD variable of run-lambda to avoid escaping

:memo: Checklist

[ ] All user-facing changes have changelog entries.
[ ] The changes are reflected on docs.tenzir.com/vast, if necessary.
[x] The PR description contains instructions for the reviewer, if necessary.

:dart: Review Instructions
The changes are mainly small improvements of the Makefile recipes. Appart from that:

I added the base64 decoding of the CMD parameter in the Lambda python script to match the encoding that was added in the Makefile
exported the task family from Terraform so that get-vast-tasks only returns VAST tasks

I did not update the README to account for these changes as it is currently being revamped in https://github.com/tenzir/vast/pull/2135. I'll finish this PR once that is merged.

@dominiklohmann I think this is ready for merging


Wrong array index managment

this.length not this.length-1. I.e. on push element is added ad n-1 position instead n.
push and pop methods
         return this.splice(this.length-1,0,item);

         return this.splice(this.length-1,1);

Looking into this. Will have a response by 5/9/2016.

There is a release candidate with this fix checked in as branch 0.0.11.

tks @anywhichway. I'll try on tomorrow

release candidate in v0.0.12 branch


Ghidra Plugin Repository

No, I don't mean a GitHub repository.
Is your feature request related to a problem? Please describe.
When there is an update to a plugin the user has installed, there is currently no way for them to know apart from occasionally checking on the project.
Describe the solution you'd like
A "repository" plugin for ghidra which would allow users to specify web addresses to use for checking for updates. In particular, I'm thinking about something similar to the implementation used in the Arduino IDE.
Describe alternatives you've considered
Checking manually. As the Ghidra community continues to grow and more plugins continue to become available this can get old fast. I currently have a batch script which I run every day that goes through every local plugin repo and pulls any changes.
Additional context
I think it would be quite advantageous to the community to have a plugin like this supported by the Ghidra team. It would help aid the growth of available plugins and could allow for other things such as one plugin requiring at least version x of some other plugin.

Relates to #391 I think. Correct me if I wrong.

Relates to #391 I think. Correct me if I wrong.

It is similar. The main difference I see is that it appears that #391 would depend on an online index repository. I may not have made it clear enough, but what is being suggested here would be local.
What I'm looking for would be a process similar to this. All that would be required on Ghidra's end would be a plugin to pull the file to determine of an update is available and prompt to do so.


Figure out a strategy for handling downstream specific code.

With the new automation in place via rhods-devops-infra , we always ensure that downstream is behind upstream in commits. This opens us up to potential future issues where we may need to add changes specific to downstream that don't need to go upstream. We do not have a strategy around this, the purpose of this task is to have plan/process in place to resolve these sorts of issues, confer with devops team on their plan to handle this.

Let's combine this with https://github.com/opendatahub-io/data-science-pipelines-operator/issues/274 as it is very much related.


[ISSUE]Not swiping pokestops. Low on pokeballs

Expected Behavior
If low on pokeballs, farm for pokeballs by swiping pokestops.
Actual Behavior
Not swiping any pokestops
Your FULL config.json (remove your username, password, gmapkey and any other private info)
{
"websocket_server": true,
"heartbeat_threshold": 10,
"enable_social": true,
"live_config_update": {
"enabled": true,
"tasks_only": false
},
"tasks": [
{
"type": "TelegramTask",
"config": {
"enabled": false,
"master": null,
"password": null,
"// old syntax, still supported: alert_catch": ["all"],
"// new syntax:": {},
"alert_catch": {
"all": {"operator": "and", "cp": 1300, "iv": 0.95},
"Snorlax": {"operator": "or", "cp": 900, "iv": 0.9}
}
}
},
{
"type": "DiscordTask",
"config": {
"enabled": false,
"master": null,
"// old syntax, still supported: alert_catch": ["all"],
"// new syntax:": {},
"alert_catch": {
"all": {"operator": "and", "cp": 1300, "iv": 0.95},
"Snorlax": {"operator": "or", "cp": 900, "iv": 0.9}
}
}
},
{
"//NOTE: This task MUST be placed on the top of task list": {},
"type": "RandomAlivePause",
"config": {
"enabled": true,
"min_duration": "00:00:10",
"max_duration": "00:10:00",
"min_interval": "00:05:00",
"max_interval": "01:30:00"
}
},
{
"type": "HandleSoftBan"
},
{
"type": "RandomPause",
"config": {
"enabled": true,
"min_duration": "00:00:10",
"max_duration": "00:10:00",
"min_interval": "00:10:00",
"max_interval": "02:00:00"
}
},
{
"type": "CompleteTutorial",
"config": {
"enabled": false,
"// set a name": "",
"nickname": "",
"// 0 = No Team, 1 = Blue, 2 = Red, 3 = Yellow": "",
"team": 0
}
},
{
"type": "CollectLevelUpReward",
"config": {
"collect_reward": true,
"level_limit": -1
}
},
{
"type": "BuddyPokemon",
"config": {
"enabled": true,
"buddy_list": "Haunter,Dragonite",
"best_in_family": true,
"// candy_limit = 0 means no limit, so it will never change current buddy": {},
"candy_limit": 100,
"// force_first_change = true will always change buddy at start removing current one": {},
"force_first_change": false,
"buddy_change_wait_min": 3,
"buddy_change_wait_max": 5,
"min_interval": 120
}
},
{
"type": "IncubateEggs",
"config": {
"enabled": true,
"infinite_longer_eggs_first": false,
"breakable_longer_eggs_first": true,
"min_interval": 120,
"infinite": [2,5,10],
"breakable": [2,5,10]
}
},
{
"type": "UpdateLiveStats",
"config": {
"enabled": true,
"min_interval": 10,
"stats": ["username", "uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited"],
"terminal_log": true,
"terminal_title": true
}
},
{
"type": "UpdateLiveInventory",
"config": {
"enabled": true,
"min_interval": 120,
"show_all_multiple_lines": false,
"items": ["pokemon_bag", "space_info", "pokeballs", "greatballs", "ultraballs", "razzberries", "luckyegg"]
}
},
{
"type": "ShowBestPokemon",
"config": {
"enabled": true,
"min_interval": 60,
"amount": 2,
"order_by": "cp",
"info_to_show": ["cp", "ivcp", "dps", "hp"]
}
},
{
"type": "TransferPokemon",
"config": {
"enabled": true,
"min_free_slot": 5,
"transfer_wait_min": 3,
"transfer_wait_max": 5
}
},
{
"type": "NicknamePokemon",
"config": {
"enabled": false,
"nickname_above_iv": 0.9,
"nickname_template": "{iv_pct}-{iv_ads}",
"nickname_wait_min": 3,
"nickname_wait_max": 5
}
},
{
"type": "EvolvePokemon",
"config": {
"enabled": true,
        "// evolve only pidgey and drowzee": "",
        "// evolve_list": "pidgey, drowzee",
        "// donot_evolve_list": "none",

        "// evolve all but pidgey and drowzee": "",
        "// evolve_list": "all",
        "// donot_evolve_list": "pidgey, drowzee",

        "evolve_list": "all",
        "donot_evolve_list": "Dratini,Dragonair,Bulbasaur,Squirtle,Ivysaur,Wartortle,Bellsprout,Exeggcute,Weedle,Oddish,Abra,Weepinbell,Machop,Nidoran M,Nidoran F,Charmander,Charmeleon,Poliwag,Geodude,Gastly,Haunter",

      "first_evolve_by": "iv",
      "evolve_above_cp": 100,
      "evolve_above_iv": 0.8,
      "logic": "or",
      "min_evolve_speed": 25,
      "max_evolve_speed": 30,
      "min_pokemon_to_be_evolved": 1,
      "use_lucky_egg": false
    }
  },
  {
    "type": "UseIncense",
    "config": {
      "use_incense": true,
      "use_order": [
        "ordinary",
        "spicy",
        "cool",
        "floral"
      ]
    }
  },
  {
    "type": "RecycleItems",
    "config": {
      "enabled": true,
      "min_empty_space": 15,
      "max_balls_keep": 205,
      "max_potions_keep": 20,
      "max_berries_keep": 50,
      "max_revives_keep": 20,
      "item_filter": {
        "Pokeball":       { "keep" : 25 },
        "Potion":         { "keep" : 0 },
        "Super Potion":   { "keep" : 0 },
        "Hyper Potion":   { "keep" : 0 },
        "Revive":         { "keep" : 0 },
        "Razz Berry":     { "keep" : 100 }
      },
      "recycle_wait_min": 3,
      "recycle_wait_max": 5,
      "recycle_force": true,
      "recycle_force_min": "00:01:00",
      "recycle_force_max": "00:03:00"
    }
  },
  {
    "type": "CatchPokemon",
    "config": {
      "enabled": true,
      "catch_visible_pokemon": true,
      "catch_lured_pokemon": true,
      "catch_incensed_pokemon": true,
      "min_ultraball_to_keep": 50,
      "berry_threshold": 0.30,
      "vip_berry_threshold": 0.9,
      "treat_unseen_as_vip": true,
      "daily_catch_limit": 800,
      "vanish_settings": {
        "consecutive_vanish_limit": 10,
        "rest_duration_min": "02:00:00",
        "rest_duration_max": "04:00:00"
      },
      "catch_throw_parameters": {
        "excellent_rate": 0.1,
        "great_rate": 0.5,
        "nice_rate": 0.3,
        "normal_rate": 0.1,
        "spin_success_rate" : 0.6,
        "hit_rate": 0.75
      },
      "catch_simulation": {
        "flee_count": 3,
        "flee_duration": 2,
        "catch_wait_min": 3,
        "catch_wait_max": 6,
        "berry_wait_min": 3,
        "berry_wait_max": 5,
        "changeball_wait_min": 3,
        "changeball_wait_max": 5,
        "newtodex_wait_min": 20,
        "newtodex_wait_max": 30
      }
    }
  },
  {
    "type": "SpinFort",
    "config": {
      "enabled": true,
      "spin_wait_min": 3,
      "spin_wait_max": 5,
      "daily_spin_limit": 1900
    }
  },
  { "type": "UpdateWebInventory",
    "config": {
      "enabled": true
    }
  },
  {
    "type": "MoveToFort",
    "config": {
      "enabled": true,
      "lure_attraction": true,
      "lure_max_distance": 2000,
      "walker": "StepWalker",
      "log_interval": 5
    }
  },
  {
    "type": "FollowSpiral",
    "config": {
      "enabled": true,
      "diameter": 4,
      "step_size": 70
    }
  }
],
"map_object_cache_time": 5,
"forts": {
  "avoid_circles": true,
  "max_circle_size": 50,
  "cache_recent_forts": true
},
"pokemon_bag": {
  "// if 'show_at_start' is true, it will log all the pokemons in the bag (not eggs) at bot start": {},
  "show_at_start": true,
  "// if 'show_count' is true, it will show the amount of each pokemon (minimum 1)": {},
  "show_count": false,
  "// if 'show_candies' is true, it will show the amount of candies for each pokemon": {},
  "show_candies": false,
  "// 'pokemon_info' parameter define which info to show for each pokemon": {},
  "// the available options are": {},
  "// ['cp', 'iv_ads', 'iv_pct', 'ivcp', 'ncp', 'level', 'hp', 'moveset', 'dps']": {},
  "pokemon_info": ["cp", "iv_pct", "level"]
},
"walk_max": 10.16,
"walk_min": 8.16,
"alt_min": 500,
"alt_max": 1000,

"sleep_schedule": {
  "enabled": true,
  "enable_reminder": false,
  "reminder_interval": 600,
  "entries": [
    {
      "enabled": true,
      "time": "4:00",
      "duration": "1:30",
      "time_random_offset": "00:30",
      "duration_random_offset": "00:30",
      "wake_up_at_location": "34.008854, -118.497532"
    },
    {
      "enabled": true,
      "time": "17:45",
      "duration": "1:00",
      "time_random_offset": "01:00",
      "duration_random_offset": "00:30",
      "wake_up_at_location": "34.008854, -118.497532"
    }
  ]
},

"gps_default_altitude": 8.0,
"replicate_gps_xy_noise": false,
"replicate_gps_z_noise": false,
"gps_xy_noise_range": 0.000125,
"gps_z_noise_range": 12.5,
"debug": false,
"test": false,
"walker_limit_output": false,
"health_record": true,
"location_cache": true,
"distance_unit": "km",
"reconnecting_timeout": 15,
"logging": {
  "color": true,
  "show_datetime": true,
  "show_process_name": true,
  "show_log_level": true,
  "show_thread_name": false
},
"catch": {
  "any": {"candy_threshold" : 800 ,"catch_above_cp": 200, "catch_above_iv": 0.7, "logic": "or"},
  "// Example of always catching Rattata:": {},
  "// Rattata": { "always_catch" : true },
  "// Example of catching only Diglett and Horsea needed for Bubblestrat; you might want to also configure sniping (MoveToMap - helps you get hold of neede pokemons faster) and disable SpinFort (or you will advance past level 2 which will make it impossible to catch level-1 pokemons)": {},
  "// Diglett": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": ["Scratch", "Mud Slap"] },
  "// Horsea": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": ["Bubble"] },
  "// Example of catching Vaporeon only with Water Gun and Hydro Pump": {},
  "// Vaporeon": { "catch_above_iv": 0.99, "charged_attack": ["Hydro Pump"], "fast_attack": ["Water Gun"]}
},
"release": {
  "any": {"keep_best_iv": 1},
  "Arcanine": {"keep_best_cp": 2, "keep_best_iv": 2},
  "Dratini": {"keep_best_iv": 2, "keep_best_cp": 1},
  "Dragonair": {"keep_best_iv": 2, "keep_best_cp": 1},
  "Dragonite": {"keep_best_iv": 2, "keep_best_cp": 2},
  "Slowbro": {"keep_best_iv": 1, "keep_best_cp": 1},
  "Exeggutor": {"keep_best_iv": 2, "keep_best_cp": 1},
  "Vaporeon": {"keep_best_iv": 2, "keep_best_cp": 1},
  "Flareon": {"keep_best_iv": 2, "keep_best_cp": 1},
  "Snorlax": {"keep_best_iv": 1, "keep_best_cp": 1},
  "// Example of always releasing Rattata:": {},
  "// Rattata": {"always_release": true},
  "// Example of keeping 3 stronger (based on CP) Pidgey:": {},
  "// Pidgey": {"keep_best_cp": 3},
  "// Example of keeping 2 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_iv": 2},
  "// Keep no more than 3 best IV pokemon for every pokemon type": {},
  "// any": {"keep_best_iv": 3},
  "// Keep no more than 3 best IVCP pokemon for every pokemon type": {},
  "// any": {"keep_best_ivcp": 3},
  "// Discard all pokemon in bag except 100 pokemon with best CP": {},
  "// all": {"keep_best_cp": 100},
  "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": {},
  "// Zubat": {"keep_best_cp": 2, "keep_best_iv": 3},
  "// Example of custom order of static criterion": {},
  "// Zubat": {"keep_best_custom": "iv, cp, hp_max", "amount":2}
},
"vips" : {
    "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate": {},
    "any": {"catch_above_cp": 1500, "catch_above_iv": 0.9, "logic": "or" },
    "Lapras": {},
    "Moltres": {},
    "Zapdos": {},
    "Articuno": {},

    "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": {},
    "Mewtwo": {},
    "Dragonite": {},
    "Snorlax": {},
    "// Mew evolves to Mewtwo": {},
    "Mew": {},
    "// Arcanine": {},
    "Vaporeon": {},
    "Gyarados": {},
    "Exeggutor": {},
    "Muk": {},
    "Weezing": {},
    "Flareon": {}
},
"websocket": {
	"start_embedded_server": true,
	"server_url": "<IP_ADDRESS>:4000"
}

}
Output when issue occurred
[2016-10-03 13:14:34] [CollectLevelUpReward] [INFO] Received level up reward:
[2016-10-03 13:14:34] [BuddyPokemon] [INFO] (Haunter) Buddy next award 0.00/3.0 km
[2016-10-03 13:14:34] [IncubateEggs] [INFO] Eggs incubating: 0.69/2.0 km (Eggs left: (10.0, 7), Incubating: 1)
[2016-10-03 13:14:36] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:00:07 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:14:36] [UpdateLiveInventory] [INFO] Pokemon: 198/250 | Items: 144/350 | Pokeballs: 0 | GreatBalls: 0 | UltraBalls: 46 | RazzBerries: 31 | LuckyEgg: 7
[2016-10-03 13:14:36] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:14:36] [EvolvePokemon] [INFO] Evolvable: 0/1
[2016-10-03 13:14:47] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:00:19 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:14:58] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:00:30 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:15:09] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:00:42 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:15:20] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:00:52 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:15:30] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:01:03 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:15:36] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:15:38] [RecycleItems] [INFO] Forcing item recycle based on schedule
[2016-10-03 13:15:38] [RecycleItems] [INFO] Next forced item recycle at 13:17:48
[2016-10-03 13:15:39] [PokemonCatchWorker] [INFO] Skip ignored Ekans! (CP: 137 IV: 0.38 A/D/S 13/4/0)
[2016-10-03 13:15:41] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:01:13 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:15:53] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:01:26 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:04] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:01:36 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:16] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:01:49 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:27] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:02:00 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:33] [PokemonCatchWorker] [INFO] Skip ignored Magikarp! (CP: 61 IV: 0.4 A/D/S 5/2/11)
[2016-10-03 13:16:35] [BuddyPokemon] [INFO] (Haunter) Buddy next award 0.00/3.0 km
[2016-10-03 13:16:35] [IncubateEggs] [INFO] Eggs incubating: 0.69/2.0 km (Eggs left: (10.0, 7), Incubating: 1)
[2016-10-03 13:16:36] [UpdateLiveInventory] [INFO] Pokemon: 198/250 | Items: 144/350 | Pokeballs: 0 | GreatBalls: 0 | UltraBalls: 46 | RazzBerries: 31 | LuckyEgg: 7
[2016-10-03 13:16:36] [EvolvePokemon] [INFO] Evolvable: 0/1
[2016-10-03 13:16:38] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:02:11 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:38] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:16:49] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:02:21 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:16:51] [PokemonCatchWorker] [INFO] Skip ignored Mankey! (CP: 32 IV: 0.42 A/D/S 0/12/7)
[2016-10-03 13:17:15] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:02:48 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:17:26] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:02:59 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:17:38] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:03:10 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:17:39] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:17:49] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:03:21 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:17:49] [RecycleItems] [INFO] Forcing item recycle based on schedule
[2016-10-03 13:17:49] [RecycleItems] [INFO] Next forced item recycle at 13:20:24
[2016-10-03 13:18:01] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:03:33 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:18:02] [PokemonCatchWorker] [INFO] Skip ignored Diglett! (CP: 75 IV: 0.53 A/D/S 13/11/0)
[2016-10-03 13:18:12] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:03:44 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:18:23] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:03:55 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:18:35] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:04:08 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:18:37] [BuddyPokemon] [INFO] (Haunter) Buddy next award 0.12/3.0 km
[2016-10-03 13:18:37] [IncubateEggs] [INFO] Eggs incubating: 0.81/2.0 km (Eggs left: (10.0, 7), Incubating: 1)
[2016-10-03 13:18:37] [UpdateLiveInventory] [INFO] Pokemon: 198/250 | Items: 144/350 | Pokeballs: 0 | GreatBalls: 0 | UltraBalls: 46 | RazzBerries: 31 | LuckyEgg: 7
[2016-10-03 13:18:37] [EvolvePokemon] [INFO] Evolvable: 0/1
[2016-10-03 13:18:39] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:18:46] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:04:19 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:18:57] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:04:30 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:19:09] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:04:41 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:19:20] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:04:53 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:19:31] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:05:04 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:19:40] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:19:42] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:05:15 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:19:53] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:05:26 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:20:05] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:05:37 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:20:16] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:05:49 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:20:24] [RecycleItems] [INFO] Forcing item recycle based on schedule
[2016-10-03 13:20:24] [RecycleItems] [INFO] Next forced item recycle at 13:23:22
[2016-10-03 13:20:27] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:00 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:20:37] [BuddyPokemon] [INFO] (Haunter) Buddy next award 0.12/3.0 km
[2016-10-03 13:20:37] [IncubateEggs] [INFO] Eggs incubating: 0.81/2.0 km (Eggs left: (10.0, 7), Incubating: 1)
[2016-10-03 13:20:37] [UpdateLiveInventory] [INFO] Pokemon: 198/250 | Items: 144/350 | Pokeballs: 0 | GreatBalls: 0 | UltraBalls: 46 | RazzBerries: 31 | LuckyEgg: 7
[2016-10-03 13:20:37] [EvolvePokemon] [INFO] Evolvable: 0/1
[2016-10-03 13:20:39] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:11 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:20:42] [ShowBestPokemon] [INFO] Best Pokemons (Exeggutor, CP 2562, IVCP 0.56, DPS 13.48, HP 145/145) | (Arcanine, CP 2484, IVCP 0.78, DPS 10.88, HP 142/142)
[2016-10-03 13:20:50] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:22 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:21:02] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:34 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:21:13] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:45 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:21:24] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:06:56 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
[2016-10-03 13:21:35] [UpdateLiveStats] [INFO] AYOUBTBBLEBG | Uptime : 0:07:07 | Earned 0 Stardust | +0 XP | 0 XP/h | Visited 0 stops
Steps to Reproduce
Run bot
Other Information
OS:
Win 10
Branch:
Master
Git Commit:
ff7eae5c
Python Version:
2.7.6

Your MoveToFort and FollowSpiral Tasks seem not to be working. So you probably are not walking to Forts to spin anything.

Try spawning directly at a fort and see if the SpinFort Task is working.
switch to the dev branch and see if the same error persists
Try using the default config and see if it is working.
Try making a MWE out of your config file to reproduce this behaviour
turn on debug mode

and at last: post only relevant output.

try disabling social

I've seen this occur when there's no Pokestop nearby within your FollowSpiral routine. I'd try the following:

Disable Social (as above)
Reset your location so you're sitting on top of a Pokestop. Hopefully this should be enough to reset the bot and allow it to continue. If this does occur, consider increasing the value of the "diameter" flag from 4 to 7 to give you a greater spiral diameter to find a Pokestop to hunt down.

I use the PokemonHunter routine and fine that occasionally this happens to me and doing the above step (2) usually fixes the issue..


Auto completion for numeric literals as generic type arguments selects unwanted items

TypeScript Version:  3.1.0-dev.20180802

Search Terms: numeric literal auto completion
Code
type Foo<T, U> = T | U;
type Bar = Foo</* cursor here */

At the highlighted cursor location, type 1,
Expected behavior:
type Foo<T, U> = T | U;
type Bar = Foo<1,

Actual behavior:
import { SSL_OP_NO_TLSv1_1 } from "constants";
// ^-- somewhere... over the rainbow

// v-- miles below:
type Foo<T, U> = T | U;
type Bar = Foo<SSL_OP_NO_TLSv1_1,

Related Issues: none

What editor are you using?

VSCode in the newest non-insider version.

I'm having some trouble getting the correction to happen in vscode, but I've noticed these things can sometimes depend on state. Pinging @mjbvz -- I think vscode should accept numbers as valid and not correct them.

For what its worth, I can reproduce it reliably:

clone https://github.com/AlCalzone/shared-utils/
open src/types.ts, go to the end
do the steps I posted in the OP

@mjbvz Could you take a look?

Should be fixed in the next vs code insiders when triggering intellisense in cases like T<1|. We still show this suggestions if you trigger intellisense for T<| and then type 1. This is consistent with how VS Code's intellisense filtering works

@mjbvz This sounds like the case I described in the OP will stay as-is? Meaning if there can be an auto-import for SSL_OP_NO_TLSv1_1 and similar and I want to use 1 as a literal type for a generic, it will auto-complete the constant.


Add shim for Spark 3.0.3

Spark 3.0.3 is starting to publish snapshots, so adding a shim that can support that version.

build

build

build


GH Workflow: Publish to npm

Create a Github workflow for every time a PR is merged to master:

Create a new release on Github (https://github.com/trussworks/react-uswds/releases) using the most recent CHANGELOG entry (and/or PR description)
Merge master into develop so that develop is up to date with the new version.
Publish the new version on npm (if tests pass)

This will require storing an npm token in GH. Probably a job for @trussworks-infra

Since it seems like we can't let CI publish to npm without circumventing 2FA (which we don't want to do), I'm going to close & mark this as won't fix for now. See https://github.com/trussworks/react-uswds/issues/147


Switch plugin managment to dein

This is almost complete (dein branch):

[x] install/manage plugins with dein
[x] update plugins automatically once they've been installed
[ ] Rake task correctly installs dein when run
[ ] All plugins have their dependencies either installed automatically, or have instructions in
the readme

The work looks AMAZING!!! Lookin' good neons ;-) Let's make this a WIP Pull Request yes?


Adding microstrain to documentation to hydro

I'd like to add my hydro package to ros.org

Hydro is EOL for a long time. Since there is no buildfarm anymore we don't accept changes to its distributions file. In order to pass the CI test you need to remove the Hydro change from this PR.


Take into account organization repositories

Some users have repositories in organization accounts - it would be nice to take this into account. Maybe one could look at the fraction of commits made to a repo and share out the stars that way. So say two users contribute to a 1000 star repo equally, they would both get 500 stars. Or something like this?

Following his idea, I think currently the ranking should be to projects/repositories and not for people. I could potentially be contributing to thousands of repositories and have none. It looks like this situation does not count right?

@larruda - yes, that's a better way of putting it!

At the moment i only take into account repositories you own. To include repositories you contribute to it would require to evaluate your contribution (number of lines commited ?)
You can't get all stars only for updated a readme...
In any case we'll have to use githubarchive in order to get that kind of information.
I'm going to think about what's feasible. If you have any suggestion on how to include contributions to repo in the ranking i'm also interested.

@vdaubry - fraction of commits to a repository is probably a good place to start. Number of lines is not meaningful (because of e.g. data files, etc.). Most highly starred repositories won't accept arbitrarily large numbers of non-useful commits. I'd argue you should get a fraction of stars that reflects your contribution, so e.g. someone contributing 10% of the commits of a 1000 star repo gets 100 stars. So if you contribute one commit to a README, you probably won't get much.

+1
I have all open source projects I take serious in a organization account of mine.

+1
I think it would be a shame if this sort of site disincentives project maintainers from moving their repos into orgs. I've written 99% of KeystoneJS but late last year I moved it into its own org as a recognition of the growing community and contributor base. This opened up a lot of enthusiasm around the project (it became a community identity rather than being seen as my own vanity project) and I think that is a great thing to encourage developers to do.
If I were concerned about my ranking on this site, though, I have 173 stars instead of ~5k partly because of this. And therefore if I were concerned about my ranking on this site, I would be incentivised not to move the repo to an org, and create a community identity around my project.

:+1:

Definitely would agree that there's a better way to rank. A lot of developers will store their open source repos in an org and only use their personal accounts for contributions and fiddling therefore the current algorithm doesn't provide the best accuracy.
Could see this being a great tool though for many reasons if the ranking accuracy is improved.

You can't get all stars only for updating a readme...

If you are a contributor of a project most probably you changed something more than a readme file
So, why do not assign all the stars from org repos to each member? (Looking at the commit history will be very painful)

+1 I usually put the high profile stuff under my org e.g https://github.com/telly/MrVector

+1 Stars from a forked repo are counted independent of the source repo, such as [ source | fork ].
And even forks have their own fork => check $('.current-repository')
I am a novice at github and I think counting these in may encourage me a lot for making greater contributions.

@goetas : Just to be sure we're talking about the same thing i'll take an example :
I see your are listed as contributor of the html5-php repo.
The stats indicate that your are a major contributor (almost 50 commits with 12k+ LOC)
But on the same contributor list your have cognifloyd whith only 1 commit with a total of 6 LOC contributed to the repo.
And this commit is actually an update to the project documentation ;)
The only way to give stars to project contributors is looking at the commit history, which is quite complex as you said.
I'm looking for help to build this and opened a discussion on #30

@vdaubry Now i see, you are right.
The solution proposed by you on #30 looks better (https://developer.github.com/v3/repos/#list-contributors), but instead of calling the API  on each repo, why do not call this only if the user request a refresh?
Doing this you can skip a lot of low-ranked users... I think that more than 60% of github users have a very low public activity, and if they are not interested in github awards, there is no need to waste bandwidth and CPU.

+1
I also publish everything serious to an organization.

I added the organizations into the ranking.
@natebrunette , here is the page for the 'tebru' org : http://github-awards.com/users/search?login=tebru
I'm colsing this issue, feel free to re-open it if something is wrong.

Sweet!  Thanks for doing that.
Will it refresh automatically?  I don't get the button because you can't login as organizations, I'm guessing.

You added organizations, members of an organization will not benefit for their commits. Is it true?

You added organizations, members of an organization will not benefit for their commits. Is it true?

That's right. See the previous comment about that subject : https://github.com/vdaubry/github-awards/issues/3#issuecomment-90499247

@natebrunette : yes organizations will refresh everytime they appear in the Github Archive (based on events such as commits, PR, etc)

It does not find City nor Country, i.e

http://github-awards.com/users/search?login=dmstr
http://github-awards.com/users/search?login=tebru

In my case dmstr has the same location as my personal account.


Added .vscode  in python.gitignore

While using vs code when choosing an interpreter for python, a ".vscode" file is generated and I notice that this is not included in the gitignore file. But I'm recommending to add this to the list. There might be related cache files for other editors, but I just use vs code.
Reasons for making this change:
TODO
Links to documentation supporting these rule changes:
TODO
If this is a new template:

Link to application or project’s homepage: TODO

@abhi7585 - .vscode does not contain a cache.  It contains VS Code settings.  .vscode/settings.json is getting created when you set your Python interpreter because VS Code stores your choice in that file.  See https://github.com/github/gitignore/pull/3661#issuecomment-787093820
If you really want to ignore .vscode, add the line to your own .gitignore.  More users would prefer to keep it that to not.


Proposal: Add build on setup script and ignore material directory

I noticed that the material directory is generated when we run the build, so I think we don't need to save it on Git. WDYT?
I also added the build script to the setup script so we don't forget to build before generating the WHL file.
If there's any reason to keep the material folder on Git, please let me know and we can close this PR.

@paulocfjunior could you rebase? I don't have the right access to do it on your fork.

@paulocfjunior could you rebase? I don't have the right access to do it on your fork.

 WARNING -  Config value: 'product'. Warning: Unrecognised configuration name: product
ERROR   -  Config value: 'theme'. Error: The path set in theme.custom_dir ('/home/runner/work/mkdocs-material/mkdocs-material/material') does not exist.

 WARNING -  Config value: 'product'. Warning: Unrecognised configuration name: product
ERROR   -  Config value: 'theme'. Error: The path set in theme.custom_dir ('/home/runner/work/mkdocs-material/mkdocs-material/material') does not exist.


vscode-extensions.pkief.material-{icon-theme,product-icons}: bump versions

Description of changes

vscode-extensions.pkief.material-product-icons: 1.5.0 -> 1.7.0
vscode-extensions.pkief.material-icon-theme: 4.31.0 -> 4.34.0

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@eclairevoyant Please, update the package to latest and complete the meta fields.

It should be a single commit per package. Please, squash the commits.

@eclairevoyant Can you rebase this?

https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/editors/vscode/extensions/README.md
Would you mind following these guidelines for this PR?

It should be a single commit per package. Please, squash the commits.

No, they're separate logical changes.
Anyway, best to close this PR until we have more sensible defaulting for vscode extensions, I guess.


Feature request: sort orders

Hi dear developers,
it would help a lot in many big vault files if we could choose the sort order of the the items by name, level, int, dex, str.
Yours,
Teodias

The "sort" button is really more of a compact button. We can discuss what's possible.

Or was this request to add sorting options on the search result page?

The result table of searching allowed me already sorting by clicking the column headers.
Sorting by level would be fine for planning what to equip soon.
With #147 there might no need for more sort options.

Alright, we'll focus on #147 then.


[video_player] Playback speed

Part
Part 3/3 of https://github.com/flutter/plugins/pull/3031.
This is the video_player part of that PR.
Checklist, full code, et al. can be found in the linked PR.

Closes #3031.
Closes flutter/flutter#16624.
Closes flutter/flutter#29900.
Closes #1400.
Closes #860.

@ditman Can you make sure that #3031, #1400, #860, flutter/flutter#29900, and flutter/flutter#16624 are closed after this is merged? 🎉

There's a bunch of warnings that seem legit:
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:63:51: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:115:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:116:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:136:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:137:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:156:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:157:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:176:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:177:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue
    - WARN  | [iOS] xcodebuild:  /private/var/folders/3y/l0z1x3693dl_8n0qybp4dqwh0000gn/T/cirrus-ci-build/packages/video_player/video_player/ios/Classes/messages.m:193:37: warning: Converting a pointer value of type 'NSNumber * _Nullable' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue

(I'll restart the test just in case)

@ditman Is the latest Darwin lint a flake? I mean it could easily not be, but it failed after 54s 😅

Published video_player v0.11.0, which contains the playback speed feature!


Update activate-flows.yml

Added support for $connectionRefConfig.ConnectionOwner variable to contain an email address - if it does switch the systemuser lookup to filter by email address.
Ref: https://github.com/microsoft/coe-starter-kit/issues/2137

Thanks @dmcweeney, looks good! Appreciate the contribution.


Widgets are upon us.

This will fix #1870! Here's my previous PR for the same thing, this one is just branched off main more recently and uses CodeMirror's CSS spec for style value autocomplete.
This PR can be previewed at https://homebrewery-pr-2880.herokuapp.com/.
Commits:

add the concept of widgets and widget fields

TODO:

[x] Move themeWidgets into explicit theme files
[ ] Finish adding widgets for various snippets
[ ] Set up widget select box and image preview for text+number = image snippets

https://github.com/naturalcrit/homebrewery/assets/4909307/674f61ef-c0f2-4745-a872-35b659b5eada

I'm assuming it is too difficult to narrow the options in the select menu to just valid values for each property?  The dataset for all those values/properties would need to be organized that way, I assume, and it isn't already?

...narrow the options in the select menu to just valid values for each property?

I agree, if possible we should only auto-complete with valid values.

Alright, so as I see it now, you have implemented 3-and-a-half widget types:

A sort of generic CSS value Autocomplete widget. If we can get it to autocomplete only valid values for the current field, I can see this helping non-technical people make tweaks to the CSS, as a fallback for less specific widgets.
A Related classes/fields widget that detects "monster" and suggests "frame" and "wide" as relevant options, but also provides "top" as a possible field for the "artist" snippet.
An Image widget that is similar to the Related fields widget, but uses the "injection brackets"
A numbers widget sub-mode of the CSS value Autocomplete that applies when the text contains numbers, and can be incremented/decremented with arrow keys.

Am I correct in understanding that this CSS Autocomplete is intended to act as a fallback for less specific widgets? I.e., I'm imagining that eventually our "widgets.json" file, it would be possible to mark "number-based" properties (top, left, etc.) explicitly so they don't just rely on using RegEx to detect a number in the text field, but instead appear formatted with increment/decrement arrows by default. Not sure how much of that you intend for this PR and how much to push off until later).

As for other feedback, I'm not going to dig too much into the code yet until the behavior is where you want it, but I have some UI/UX thoughts:

I kinda liked the single-row layout you had before. I liked being able to still see the contents of the block being edited. Not sure how well everything would fit, but it looked a bit more streamlined to me. The current behavior seems to have a mix of both:

I would like to be able to close out of the widgets just by clicking away.

Could you clarify what other possible "Field types" we might see? It seems currently you just have "STYLE" which appears to be just searching a pattern like "property:value".

If we can get it to autocomplete only valid values for the current field

Done

Am I correct in understanding that this CSS Autocomplete is intended to act as a fallback for any property that doesn't have a specified widget?

Yes, they are present as a fallback, but if you declare something specific that takes precedent. So we can definitely add a number-only option. I think I'd prefer to do that in a separate PR

If we make it inline, what do you think about resizing each field to only be as large as its contents, and maybe color different types of widgets differently to keep widgets visibly separated?

I do like that, this is where having a more strongly defined UI framework would be super helpful.

I would like to be able to close out of the widgets just by clicking away.

That is potentially tricky but doable, yeah.

Could you clarify what other possible "Field types" we might see?

I'm honestly not sure. I'm mostly keeping it configurable for configuration's sake

Okay we have a MAJOR update.

Added Hints component

Manages the keypress/click events and rendering for the autocomplete
Lots of logic in here that goes back and forth between fields, codeEditor, and hints

I'm realizing only now exactly how much code y'all have to review for this and I am so sorry.
I'm going to write tests covering all of this

Short demo of the updated autocomplete
https://github.com/naturalcrit/homebrewery/assets/4909307/4c5b282b-3888-49cf-ad72-001ebf6bb68a

The HTTPS option is editable.  And that's fine, but it doesn't seem to work correctly.  You can type into the field, but the text isn't displayed in the field, only inserted into the markdown....and can't be deleted.

Yeahhhhhhh I'm working on that still 😬

When a widget is open and an input chosen, scrolling pulls the autocomplete dropdown, as it is a fixed component:

For the Color, and gap between the pills, i reccomend a 5px gap, and bringing the general menu UI color in:

With darker editor themes, a simple invert css filter should suffice, if needed.
Another option would be to have different color for widgets depending on what kind of snippet they edit (tables green, PHB golden, text editor blue, and images red).

Closing this PR in favor of #2905. All feedback here will be implemented there.


AWS Batch task runner icon is missing

Issue description

website https://kestra.io/blueprints/aws/239-run-a-python-script-on-aws-ecs-fargate-with-aws-batch
OSS UI: http://localhost:8080/ui/blueprints/241

cc @shrutimantri in case you want to help fix this one -- if icon is missing, you can find one here https://aws-icons.com/

This plugin is now part of EE, and I dont have access to it.

@loicmathieu can you cross-check? I don't see what's wrong with the icon


1.17.1 util.math stuff

There are also some methods that I vaguely know what it is meant to be, but cannot come up with a good name...

canMakeAcuteAngle sounds really awkward. Really, while the acute angle property of the method is true, a more user-friendly interpretation of it is whether the yaw rotation roughly faces this direction.

Hmm, cannot come up with a good name.

IMO pointsTo was good already.