text:
#2685 - Import Provincial Restrictions from SFAS Data Bridge into SIMS

As a part of this PR, the following were completed:

[x] Created migration scripts to:
1. Add the is_included column to the sfas_restrictions table.
2. Add the Legacy restriction to the sims restrictions table.

[x] Created 3 separate sql queries to achieve the following:

1. After all the SFAS restrictions are imported,  this query inserts restrictions from sfas_restrictions to  student_restrictions if those restrictions are valid restrictions in the sims system and are either not present in the sims student_restrictions table or they are inactive.
INSERT INTO
  sims.student_restrictions (student_id, restriction_id, creator)
SELECT
  filtered_students.student_id,
  $1,
  $2
FROM
  (
    SELECT
      DISTINCT(sfas_individuals.student_id) AS student_id
    FROM
      (
        SELECT
          sfas_restrictions.code,
          CASE
            WHEN sfas_restrictions.code = 'A12' THEN '12'
            WHEN sfas_restrictions.code = 'AF1' THEN 'AF'
            WHEN sfas_restrictions.code = 'B2D' THEN 'B2'
            ELSE sfas_restrictions.code
          END AS mapped_code,
          sfas_restrictions.individual_id,
          sfas_restrictions.processed
        FROM
          sims.sfas_restrictions sfas_restrictions
        WHERE
          sfas_restrictions.removal_date IS NULL
          AND sfas_restrictions.processed = FALSE
      ) mapped_restrictions
      INNER JOIN sims.sfas_individuals sfas_individuals ON mapped_restrictions.individual_id = sfas_individuals.id
      LEFT JOIN sims.restrictions restrictions ON mapped_restrictions.mapped_code = restrictions.restriction_code
    WHERE
      sfas_individuals.student_id IS NOT NULL
      AND restrictions.restriction_code IS NULL
  ) filtered_students
WHERE
  NOT EXISTS (
    SELECT
      1
    FROM
      sims.student_restrictions student_restrictions
    WHERE
      student_restrictions.student_id = filtered_students.student_id
      AND student_restrictions.restriction_id = $1
      AND student_restrictions.is_active = TRUE
  );

2. After all the SFAS individuals are imported, this query inserts one Legacy restriction entry per student into  student_restrictions if they have one or more restrictions imported from the sfas system that are not present in the sims restrictions.
INSERT INTO
  sims.student_restrictions (student_id, restriction_id)
SELECT
  (sfas_individuals.student_id),
  restrictions.id AS restriction_id
FROM
  (
    SELECT
      sfas_restrictions.code,
      CASE
        WHEN sfas_restrictions.code = 'A12' THEN '12'
        WHEN sfas_restrictions.code = 'AF1' THEN 'AF'
        WHEN sfas_restrictions.code = 'B2D' THEN 'B2'
        ELSE sfas_restrictions.code
      END AS mapped_code,
      sfas_restrictions.individual_id,
      sfas_restrictions.processed
    FROM
      sims.sfas_restrictions sfas_restrictions
    WHERE
      sfas_restrictions.removal_date IS NULL
      AND sfas_restrictions.processed = false
  ) mapped_restrictions
  INNER JOIN sims.sfas_individuals sfas_individuals ON mapped_restrictions.individual_id = sfas_individuals.id
  INNER JOIN sims.restrictions restrictions ON mapped_restrictions.mapped_code = restrictions.restriction_code
  LEFT JOIN sims.student_restrictions student_restrictions ON student_restrictions.student_id = sfas_individuals.student_id
  AND student_restrictions.restriction_id = restrictions.id
WHERE
  sfas_individuals.student_id IS NOT NULL
  AND (
    student_restrictions.is_active = false
    OR student_restrictions.restriction_id IS NULL
  );

3. Once all the restrictions have been added to the student_restrictions table, mark the is_included column to true for all the newly imported restrictions.
UPDATE
  sims.sfas_restrictions
SET
  processed = true
  and updated_at = now()
WHERE
  processed = false;

Note:  The mappings for the restriction codes from SFAS to SIMS have been handled in the above sql queries.
Also, please note that the issue pointed out by Sonarcloud is a false positive as shown below.

Thanks for making the changes. Added more comments.

repo: bcgov/SIMS


text:
#3271 - Ministry: Student Requests - Appeals

Acceptance Criteria:

[x] On left hand menu bar revise: "Appeals" to "Change requests"
[X] Revise: "Appeals" to "Change requests"
[x] Revise: "Requested appeals" to "Pending change requests"
[x] Revise: "Make a determination......" to "Change requests that require ministry review."
[x] Expand list options to the following and align the order with the mockup:
[x] Revise: "Name" to "Given names" and remove the sorting function on given name
[x] Add: "Last name" and add sorting option to the Last name field

Nice work. Just one comment. Please take a look at the failing E2E tests.

source: gharchive/pull-request

authors: bidyashish dheepak-aot

license_type: permissive

license_source: github-api


text:
model change and load park details

Description
This PR includes the following proposed change(s):

BC-337 Load park details and par model changes

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

if your change is a breaking change, please add breaking change label to this PR
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Does the change impact or break the Docker build?

[ ] Yes
[ ] No

If Yes: Has Docker been updated accordingly?

[ ] Yes
[ ] No

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] New and existing unit tests pass locally with my changes

Hi Siva,
I'm adding this change now, just to get the model changes in place. The actual park details json data will be re-updated once Rob provides the new data.
Thanks,


text:
Bug: Milestone holdback amount should have a dollar sign in the input field [6]

Describe the Bug:
See @LindsayMacfarlane's comment here
The 'Milestone holdback amount' field is missing a monetary sign to indicate which value is expected here
Probability (how likely the bug is to happen, scored from 1-5):3
Effect (how bad the bug is when it does happen, scored from 1-5):3

Closing - see: https://github.com/bcgov/cas-cif/issues/980

source: gharchive/issue

authors: gurjmatharu pbastia

repo: bcgov/cas-cif


text:
Placeholder for implementation of barrier to irreversible expensive actions

Describe the issue
Placeholder for implementation of #741
Which Sprint Goal is this issue related to?

Note: 'Milestone' is a ZenHub term that we use synonymously with 'Sprint'.

The 'Milestone' description (created in ZenHub) should clearly list Sprint Goals. This section should indicate which 'goal' this issue is related to.
Additional context
Add any other context, attachments or screenshots
Definition of done

Exact steps tbd

Not going to pursue at this moment.

authors: mitovskaol sid-gov

repo: bcgov/cloud-pathfinder


text:
Session with SSO team to ensure alignment and visibility into their plans

Describe the issue
The SSO team initially began work on a PoC with Cognito.  They have indicated they are looking at deploying custom operational support apps to assist with the on-prem service they provide.  We want to understand this change in scope and ensure it is well aligned with our current capabilities, architecturally appropriate, etc. and ensure we have captured the changes in our tenant tracking documentation.
Which Sprint Goal is this issue related to?

Note: 'Milestone' is a ZenHub term that we use synonymously with 'Sprint'.

The 'Milestone' description (created in ZenHub) should clearly list Sprint Goals. This section should indicate which 'goal' this issue is related to.
Additional context
Add any other context, attachments or screenshots
Definition of done

meeting with SSO PO/lead, tech lead, dev, and CPF PO, Director
updated info captured in tenant tracking system
recommendation/guidance provided to tenant team as necessary

@ActionAnalytics @scayzer we should try to slot this in during our current sprint if at all possible. Not a big commitment IMO.


text:
Make Button accessibility tests pass in Storybook

This PR builds on #383 to fix the failing Storybook accessibility tests for the Button component.
Prior to this PR, the Icon and PlaceholderIconButton stories violate the test for "Buttons must have discernible text":

This is mirrored in our test-storybook script output:

I've fixed the failing test in the Icon story by adding an explicit aria-label 9f3682726bb35d2a3302e3ebf3a190960bdb7320.
This pull request also removes ButtonStories.PlaceholderIconButton, which is a duplicate of ButtonStories.Icon 0ff65a48a4c4b1a646f9639e04e803778d8cb3d2. I've replaced the instance of PlaceholderIconButton in the Button documentation file in 33c50bd4f89b391c4c1969e3ed854a70d3e796a4.
We should aim to make this accessibility requirement super clear in our Button documentation (like in #378).
After this PR is merged, our Storybook tests will be 100% passing in the command line, with one failure shown in the app as detailed in #368.

We should aim to make this accessibility requirement super clear in our Button documentation (like in #378).

Addressed in d3333ed!

repo: bcgov/design-system


text:
Telework: Change expiry date from 30 days to 60 days

“As an employee/manager or delegate submitting and completing a Telework agreement, I would like the expiry date to be change from 30 days to 60 days to allow enough time for the approvals and to avoid having to re-do my agreements.”
Tasks

Note all areas where we’d need to adjust the “30 day expiry” language (in the tool instructions, in the confirmation emails and in the comms/content on Careers & MyHR). We’d also need to look at the PIA to make any adjustments there.
Stakeholder outreach: Asses technical work required as a dependency with consultation with stakeholders to making this change (comms, etc.)
Timeline: Ensure this work/change doesn't interrupt other work, such as SL launch

The checklist the product owner uses to decide whether a story is done. Objective and discrete answers (such as a yes/no) that can be tested.

PIE/Rueben requested the change and Sean Gadsby also reported he has no concerns and will be available to review content updates or others as required.
As devs and PSA team to consider best timeline of this work - not a priority, but possibly just after/around SL launch

closed related 646 ticket as it is a duplicate

Reviewed PIA with Hasan and Nas - meeting with PSA Privacy next week.
Working with Stella/Chris to identify where we need to adjust language in the tool, content. etc. and plan the timing for when we will make the changes - related to the upgrade of the tool which will bring in new features as well as to SL launch

Camunda model for telework updated in DEV. Submissions now expire in 60 days. Emails updated as well

This looks good we've checked all the emails and messages @simensma-fresh how would we test it technically expires?

release complete! Deployed to PROD

authors: HasanSifat MeghanStothers Stella-Archer

repo: bcgov/digital-journeys


text:
include sessionCookieEnabled when syncing routes

Description
Fixes APS-2743 - gwa scheduler is not using the route tag aps.route.session.cookie.enabled
Includes sessionCookieEnabled when examining the existing routes in OCP on the cluster being synced
Types of changes

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation (non-breaking change with enhancements to documentation)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[X] I have checked that unit tests pass locally with my changes
[X] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Ready for review. Changes worked as expected in dev and are currently deployed there.

With the most recent changes in kube_api in dev (running in Gold which is in standby mode), I observed a route needing syncing being deleted and then re-inserted on the next scheduler run.
Detailed observations:

there was an existing route not-sticky-ias9df9-dev which had the aps.route.session.cookie.enabled tag (so actually was sticky). was previously synced to both clsuters
I removed the aps.route.session.cookie.enabled tag on the route in the gw config
the update of the route in GoldDR is immediate and fine
the first time sync occurs, the route is deleted in Gold and is missing - I actually observed in Route in OCP the route being absent

[2024-10-18 18:24:32,249] DEBUG routes.verify_and_create_routes: insert batch: [{'name': 'wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'sessionCookieEnabled': False, 'dataPlane': 'konghd-kong-proxy'}]
[2024-10-18 18:24:32,249] DEBUG routes.verify_and_create_routes: delete batch: [{'name': 'wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'dataPlane': 'konghd-kong-proxy', 'sessionCookieEnabled': True}]
[2024-10-18 18:24:32,250] DEBUG routes.verify_and_create_routes: Creating 1 routes - tmp /tmp/sync/20241018182432-4d18599f5c
[2024-10-18 18:24:33,235] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] ['not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca'] No override applied {}
[2024-10-18 18:24:33,235] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 matched ssl cert data-api.tls
[2024-10-18 18:24:33,235] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca (ver.3542253514)
[2024-10-18 18:24:33,236] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Prepared 1 routes
[2024-10-18 18:24:33,946] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Applied 1 routes
[2024-10-18 18:24:33,946] DEBUG routes.verify_and_create_routes: Deleting 1 routes
[2024-10-18 18:24:34,848] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Deleted route wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca
[2024-10-18 18:24:34,848] INFO h11_impl. send: 10.97.8.1:43580 - "POST /namespaces/gw-41c0c/routes/sync HTTP/1.1" 200

on the next sync round, the route is recreated

[2024-10-18 18:40:47,239] DEBUG routes.verify_and_create_routes: insert batch: [{'name': 'wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'sessionCookieEnabled': False, 'dataPlane': 'konghd-kong-proxy'}]
[2024-10-18 18:40:47,239] DEBUG routes.verify_and_create_routes: delete batch: []
[2024-10-18 18:40:47,240] DEBUG routes.verify_and_create_routes: Creating 1 routes - tmp /tmp/sync/20241018184047-2e8e88f2aa
[2024-10-18 18:40:48,236] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] ['not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca'] No override applied {}
[2024-10-18 18:40:48,236] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 matched ssl cert data-api.tls
[2024-10-18 18:40:48,236] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca (ver.)
[2024-10-18 18:40:48,237] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Prepared 1 routes
[2024-10-18 18:40:48,841] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Applied 1 routes
[2024-10-18 18:40:48,841] INFO h11_impl. send: 10.97.8.1:19364 - "POST /namespaces/gw-41c0c/routes/sync HTTP/1.1" 200

update gw config to restore the aps.route.session.cookie.enabled tag
next sync cycle the route is deleted again

[2024-10-18 18:57:02,236] DEBUG routes.verify_and_create_routes: insert batch: [{'name': 'wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'sessionCookieEnabled': True, 'dataPlane': 'konghd-kong-proxy'}]
[2024-10-18 18:57:02,236] DEBUG routes.verify_and_create_routes: delete batch: [{'name': 'wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'dataPlane': 'konghd-kong-proxy', 'sessionCookieEnabled': False}]
[2024-10-18 18:57:02,236] DEBUG routes.verify_and_create_routes: Creating 1 routes - tmp /tmp/sync/20241018185702-23d00a2cbe
[2024-10-18 18:57:03,136] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 matched ssl cert data-api.tls
[2024-10-18 18:57:03,136] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca (ver.3544619441)
[2024-10-18 18:57:03,136] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Prepared 1 routes
[2024-10-18 18:57:03,935] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Applied 1 routes
[2024-10-18 18:57:03,935] DEBUG routes.verify_and_create_routes: Deleting 1 routes
[2024-10-18 18:57:04,833] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Deleted route wild-ns-gw-41c0c-not-sticky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca
[2024-10-18 18:57:04,833] INFO h11_impl. send: 10.97.8.1:62568 - "POST /namespaces/gw-41c0c/routes/sync HTTP/1.1" 200

So why is delete now happening after insert? Presumably this was not always the behaviour, though it does come second in routes and was always based on route name https://github.com/bcgov/gwa-api/blob/eaa8ea6d96317a4ba1fde618fcfe91903533c986/microservices/kubeApi/routers/routes.py#L217
I have set kube api back to dev branch in versions to avoid creating more issues

Hmm... I think the reason is that for deletion, it really just needs to know whether the name is no longer in the source_routes.  The name is derived from the selectTag and host so this insert+delete issue would not have happened (dataPlane doesn't change).  When you added sessionCookieEnabled then differences get added into the delete list incorrectly.  To fix, I would just compare the name for building the delete_batch.

Aha thanks for digging in there. That's a tricky side effect from changing in_list() which is used in the comparison. I updated tests to reflect where deletes should and should not be happening.
Newest code works as expected when a sync update is needed in DR:
[2024-10-21 23:50:50,966] DEBUG routes.verify_and_create_routes: insert batch: [{'name': 'wild-ns-gw-41c0c-sticky-icky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'selectTag': 'ns.gw-41c0c', 'host': 'sticky-icky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca', 'sessionCookieEnabled': False, 'dataPlane': 'konghd-kong-proxy'}]
[2024-10-21 23:50:50,966] DEBUG routes.verify_and_create_routes: delete batch: []
[2024-10-21 23:50:50,968] DEBUG routes.verify_and_create_routes: Creating 1 routes - tmp /tmp/sync/20241021235050-dfbc437d7c
[2024-10-21 23:50:51,956] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] ['sticky-icky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca'] No override applied {}
[2024-10-21 23:50:51,956] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 matched ssl cert data-api.tls
[2024-10-21 23:50:51,956] DEBUG ocp_routes.prepare_apply_routes: [ns.gw-41c0c] Route A 001 wild-ns-gw-41c0c-sticky-icky-ias9df9-dev-api-gov-bc-ca.dev.api.gov.bc.ca (ver.2834629484)
[2024-10-21 23:50:51,956] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Prepared 1 routes
[2024-10-21 23:50:52,585] DEBUG routes.verify_and_create_routes: [gw-41c0c] - Applied 1 routes
[2024-10-21 23:50:52,585] INFO h11_impl. send: 10.95.10.1:14778 - "POST /namespaces/gw-41c0c/routes/sync HTTP/1.1" 200

Ugh probably should have squash merged. Could do a hard reset or we live with it

authors: ikethecoder rustyjux

repo: bcgov/gwa-api


text:
bug fix for preview of closed status

Issue #:
https://github.com/bcgov/met-public/issues/1230
Description of changes:
fix added to disable "Take me to the survey" button while previewing the closed status.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the met-public license (Apache 2.0).

Codecov Report

Merging #1344 (320d3d4) into main (2f6b7f7) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main    #1344   +/-   ##
=======================================
  Coverage   71.92%   71.92%
=======================================
  Files         315      315
  Lines        9058     9059    +1
  Branches      635      635
=======================================
+ Hits         6515     6516    +1
  Misses       2436     2436
  Partials      107      107

Flag
Coverage Δ

metweb
65.31% <100.00%> (+<0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

...web/src/components/engagement/view/SurveyBlock.tsx
100.00% <100.00%> (ø)

authors: VineetBala-AOT codecov-commenter

repo: bcgov/met-public


text:
Remove BC Mines Act Permit Credential Type

This Credential Type is deprecated and will be replaced with a W3C Issuer. The following need to be removed:
Production

Issuer: Ministry of Energy, Mines and Low-carbon Innovation
Credential Type: BC Mines Act Permit

Will need to author an SQL script to run this as a one-time operation.

@WadeBarnes do you have any thoughts on this approach?

Considerations:

Onetime SQL script might be fine to clear the registration out of the main OrgBoo database.  But it might not be enough ...
We'd need to ensure any corp records that had been issued credentials were cleaned up too; associated records removed, search indexes updated etc.
Any related credentials in the wallet would need to be removed; preferably.
Any records in the wallet related to the issuer registration should also be cleaned up.

authors: WadeBarnes amanji

repo: bcgov/orgbook-bc-client


text:
Auto-approving a create request if the PO and at least one TL already have a provisioned project

Describe the issue
Rational/Why
Additional Context
Dependencies
Tests
Definition of done/Acceptance Criteria

Iryna to follow up with Billy and Shelly re this requirement to see if it's still valid.

repo: bcgov/platform-services-registry


text:
SysDig

https://developer.gov.bc.ca/BC-Government-Sysdig-Monitoring-Service-Definition
https://developer.gov.bc.ca/OpenShift-User-Guide-to-Creating-and-Using-a-Sysdig-Team-for-Monitoring

https://docs.developer.gov.bc.ca/request-quota-increase-for-openshift-project-set/#set-up-resource-monitoring-with-sysdig-monitor

@mishraomp You dug into sysdig, right?  Can we close this?

https://docs.developer.gov.bc.ca/sysdig-monitor-onboarding/

yeah I did look into it, some sample to add team members are here https://github.com/bcgov/pubcode/blob/main/sysdig/sysdig.yml
but the rest was done in the GUI of sysdig, like setting alerts

authors: DerekRoberts mishraomp

repo: bcgov/quickstart-openshift


text:
Exclusion Report | Minor adjustments to UI language |1|

Tooltip when submitting Exclusion report without the Signing Authority role:

Current Message: "You must have the Signing Authority role to submit a Exclusion Report to the Government of British Columbia."
Revised Message: "You must have the Signing Authority role to submit an Exclusion Report to the Government of British Columbia."
Difference is "an" before Exclusion Report rather than "a"

Signing Authority Declaration Confirmation Alert:

Current Message: "Are you sure you want to submit this Compliance Report to the Government of British Columbia?"
Revised Message: "Are you sure you want to submit this Exclusion Report to the Government of British Columbia?"
"Exclusion" instead of "Compliance"

System Alert when Submitting Exclusion Report:

Current Message: "Compliance Report submitted"
Revised Message: "Exclusion Report submitted"

https://trello.com/c/UzzkathD/1986-exclusion-report-minor-adjustments-to-ui-language-1

 Exclusion Report | Minor adjustments to UI language |1|

resolved in sprint vulcan

authors: KMenke amichard

repo: bcgov/tfrs


text:
Compliance Report A | Do not show decimal values in totals floating window |1|

Hide decimals in totals floating window display
https://trello.com/c/K24QVYKH/1739-compliance-report-a-do-not-show-decimal-values-in-totals-floating-window-1

 Compliance Report A | Do not show decimal values in totals floating window |1|

resolved in sprint vulcan


text:
php7 and mssql database driver - mssql extension dropped from php7 core

I'm not sure if there's plans to support PHP7, but if there is...
The MSSQL extension has been voted out of the core (see https://wiki.php.net/rfc/removal_of_dead_sapis_and_exts).  This means that the mssql database driver will not work with php7.  Other frameworks sql server extension wraps the sqlsrv (for when its running on windows) and dblib (for when its running on linux).  If sql server is to be supported with php7, it appears that this methodology will have to be adopted.

We're aware of this, and it's irrelevant to CI.

CI3 already has a sqlsrv driver and a dblib sub-driver for the pdo driver.

thanks - i didn't realize it was through the PDO driver.

authors: hhellbusch mwhitneysdsu narfbg

repo: bcit-ci/CodeIgniter

license: MIT


text:
Added support for raw_input_stream and json_input_stream

There might be cases were a client sends a request with data not in the key1=value1&key2=value2&... fashion for those cases I've added the raw_input_stream.
The input_stream function has been modified to get the data from raw_input_stream.
json_input_stream has been added for cases where the body of the request is in a json format.
Some notes:
$_input_stream has been preserved cause some people might be using it on a extension of the class, even though since 3.0 it's a pre-release version maybe it could be deleted.
On the other hand and even though it's not implemented maybe it would be better (for performance) to just parse both the input / json once, and leave it on a variable, to avoid parsing on the next call.

Hmm ... I'm thinking pretty much what you've described in your notes, only you deffinately don't need to preserve the property name, and given that the raw data doesn't need special parsing, I'd rather have something like this:
protected $_input_stream_raw;
protected $_input_stream_parsed;

public function input_stream($index = NULL, $xss_clean = NULL)
{
    if ( ! is_array($this->_input_stream_parsed))
    {
        isset($this->_input_stream_raw) OR $this->_input_stream_raw = file_get_contents('php://input');
        parse_str($this->_input_stream_parsed, $this->_input_stream_raw);
        is_array($this->_input_stream_parsed) OR $this->_input_stream_parsed = array();
    }

    return $this->_fetch_from_array($this->_input_stream_parsed, $index, $xss_clean);
}

public function __get($name)
{
    if ($name === 'input_stream')
    {
        isset($this->_input_stream_raw) OR $this->_input_stream_raw = file_get_contents('php://input');
        return $this->_input_stream_raw;
    }
}

Dedicating a function to the JSON format isn't necessary as it is one of the easiest things to parse. With the above code, you could simply do $json_input = json_decode($this->input->input_stream) and have control over json_decode()'s other options. Using a getter also allows making other stuff like the $ip_address property protected because it shouldn't be modified by userspace code, but still have it readable (don't make that change now).
But, judging by your commit messages, I assume you're mistaking the docblocks for our documentation ... They're inline documentation, yes, but only for those who dive into the framework's code. Any new features should also be explained in the appropriate page under user_guide_src/source/ and with a changelog.rst entry as well.

Oh ok, I'll try to update the other files you mention later.
About some things I don't like about the solution you purpose:
1- The function input_stream and the pseudo-property input_stream give 2 completely diferent things
2- I think the function input_stream would be better like that:
public function input_stream($index = NULL, $xss_clean = NULL)
{
    if ( ! is_array($this->_input_stream_parsed))
    {
        parse_str($this->input_stream, $this->_input_stream_parsed);
        is_array($this->_input_stream_parsed) OR $this->_input_stream_parsed = array();
    }

    return $this->_fetch_from_array($this->_input_stream_parsed, $index, $xss_clean);
}

Losing a little bit of performance cause yours was like inlined but I think it's much more clean.
About the json function for parsing the body of the request, on one side I agree with you that it's trivial to just decode on the controller and you can also have a much nicer way to access the extra attributes provided by the json decoder, on the other side, even though parse_str don't have so many options and so it's more clean, the task of the parse_str and jsondecode functions is quite similar, parse a string into an array (even though json might have more options to set it as an object and other crazy stuff) anyway, the main reason I put the json_input_string function is to use the _fetch_from_array function, for the cleaning of the variables.
But anyway this stuff I have just written it's useless cause I found a much better solution, but before getting my hands dirty into it I'd like to have your opinion on that. As I said the parse_str and jsondecode functions have a similar functionality, that is convert a string to an array. And even though I can't think of any other common format (maybe some kind of xmlparser that parses both attributes and child into an array? that'd be weird but for the sense of example) it's deffinely a format independent task.
So what I think it should be something similar to:
public function input_stream($index = NULL, $xss_clean = NULL, $parser = 'parse_str')
{
    if ( ! is_array($this->_input_stream_parsed))
    {
        call_user_func_array($parser, array($this->input_stream, &$this->_input_stream_parsed));
        is_array($this->_input_stream_parsed) OR $this->_input_stream_parsed = array();
    }

    return $this->_fetch_from_array($this->_input_stream_parsed, $index, $xss_clean);
}

Majority of people can still use parse_str by default and others who need more special things can build their partial application that uses those very same parameters, and use it.

Agreed on point 1, maybe still call it raw_input_stream but a property?
Point 2 can go either way (although you've switched parameter places in your parse_str() call ...), but performance was my goal. :)

Ideally, how the stream input is parsed would depend on the Content-Type header, but if we go that route, it's too much work for input_stream() alone while going further is a massive effort that I'd rather leave for CI4.
When that's not the case, you can't automatically respond with HTTP 415, which has left you with a switchable parameter ... Yes, that's neat and you should absolutely use it as a custom extension if it fits your case, but if we start adding such options, it means we're inclined to add support for all kinds of parsers in the future and that's just not feasible.
Even the $xss_clean parameter was added just for consistency with the rest of CI_Input's methods, which are almost all just mappings to already parsed multipart/form-data, so I really don't want to go beyond that for CI3.

I switched the parse_str parameters cause I think you switched them before hahahah
And I don't understand "but if we start adding such options, it means we're inclined to add support for all kinds of parsers in the future and that's just not feasible."
In my opinion you are just adding support for functions that have the same signature as parse_str. (And in fact, jsondecode, already doesn't)
So if someone needs the json, in the controller they'd just do:
// I didn't try the code so there might be some bug
$this->input->input_string('funnyindex', true, function($source, &$result) {
 $result = json_decode($source, true);
});

And where it says json_decode it could just be any parser with the apropiate parameters for each place, so in my opinion the support for the given parser is added by the enduser not by CI.

Well, yes - that does look neat with the callback. But excluding an abstracted API, it brings zero value when you can do that with the same amount of code without using the framework's functions, and especially when the user is responsible of injecting the parser - it's still their effort, so we offer nothing in practice.
Plus, you seem to be be advocating this because of the XSS clean feature, and that one should only be used on output, not input. When you're not dealing form-data, its even less useful - even more often harmful than not.

Well, for the most part I'd agree with you that XSS sanitizing is only needed on output (even it's not 100% truth, more on that later), but then why all the input functions have the option to sanitize? I guess is just a way to help.
But about the XSS sanitizing on input there is one very particular case: mongoDB (by what I've seen in other posts I think you don't like this database so much but the truth is that it's gaining popularity everyday, so... this is life). Queries on mongoDB can execute arbitrary javascript, and hence it's a must to filter possible XSS on input. Not only that but also when you work with mongoDB you must work with json strings.
I'm not saying it couldn't be made another way, in fact I already said on the other post we were discussing some days ago, that if some third party software has some security issue with some kind of string it should be the driver who handles it not another class; And I still think like that and maintain it. But the truth is that when you work with mongoDB json and xss sanitizing should be really coupled together.
Now that being said my question is, if you help people who don't use mongodb to XSS-sanitize their inputs (which as you said they don't really have any need, since they could do it on output), why won't you help people who use mongoDB since those are probably gonna receive their input as json, and will want it to be XSS-sanitized?
And I also don't agree with you about the "adding zero value", maybe it doesn't add as much value as just saying which parser you want and it magically does so, but it deffinely helps, just as the XSS filtering on the input class.

Well, for the most part I'd agree with you that XSS sanitizing is only needed on output (even it's not 100% truth, more on that later), but then why all the input functions have the option to sanitize? I guess is just a way to help.

The option exists solely for backwards compatibility. It is something that CodeIgniter has done the wrong way from the start and it is now very difficult to remove that feature without breaking every single application that uses the option, which also defaulted to TRUE in previous versions. Changing it to the value of 'global_xss_filtering' is a step in discouraging its usage.
In fact, the more messages I exchange with you on this topic, the more I think I should just remove that option from input_stream(), because it's a new feature that doesn't need to maintain BC and consistency with other methods alone is probably not worth it.

But about the XSS sanitizing on input there is one very particular case: mongoDB (by what I've seen in other posts I think you don't like this database so much but the truth is that it's gaining popularity everyday, so... this is life). Queries on mongoDB can execute arbitrary javascript, and hence it's a must to filter possible XSS on input. Not only that but also when you work with mongoDB you must work with json strings.

It is true that I don't like it, but that's irrelevant ... I'm not sure how you got that impression, I've only said that it doesn't fit into our DB infrastructure because it's not an SQL database. But anyway ...
XSS is a browser attack and has nothing to do with MongoDB, even if it does execute arbitrary JS code. Plus, even if a context-aware XSS filter just happens to be useful in input escaping for MongoDB, ours is unfortunately not context aware and it deals a lot more with HTML than with raw JavaScript, making it a lot more aggressive and unsuitable for that purpose.
And JSON itself is not an XSS attack vector itself, IIRC.

I'm not saying it couldn't be made another way, in fact I already said on the other post we were discussing some days ago, that if some third party software has some security issue with some kind of string it should be the driver who handles it not another class; And I still think like that and maintain it. But the truth is that when you work with mongoDB json and xss sanitizing should be really coupled together.

Well, you said it - it's the MongoDB driver/library's job to do it. ;)

Now that being said my question is, if you help people who don't use mongodb to XSS-sanitize their inputs (which as you said they don't really have any need, since they could do it on output), why won't you help people who use mongoDB since those are probably gonna receive their input as json, and will want it to be XSS-sanitized?

I believe I already answered that above. Plus, CodeIgniter doesn't support MongoDB - not our problem.

And I also don't agree with you about the "adding zero value", maybe it doesn't add as much value as just saying which parser you want and it magically does so, but it deffinely helps, just as the XSS filtering on the input class.

// Your suggestion:
$this->input->input_stream(NULL, FALSE, function($input, &$output) {
    $output = json_decode($input, TRUE);
});

// Raw PHP (assuming we get the stream as a property):
$json = json_decode($this->input->raw_input_stream);

I really don't see any value added by that.

Ok! No problem, but if as you said the input filter is solely for BC I
think it's exactly the right time to remove it (at least for the new
functions).
Gonna submit another pull request soon with the version we agreed. And
hopefully with the documentation on the right place.

You don't need to submit a new pull request ... back-and-forth commits to adjust a proposed patch is one of the few thins that we don't nitpick on. :)
Just push to the same branch, I think you can even do a hard reset, commit & force push if you want to keep it clean.

Ok I think this is it.

Now the nitpicking begins ... :)

Most of these are styling issues, so you should probably read our styleguide as well.
The property also needs to be described in the class reference section, see how that's done via .. attribute:: in the Output class docs.
And again, probably change $_input_stream to $_parsed_input_stream or similar ...

After the whitespace changes, it's good to go. :)

Ok, sorry about all that, I might look like slow in the head, but I'm using such a funny tool to deal with git... gess I shall use the apropiate tools from now on... =_='

Literally nobody does it right the first time, don't worry about that. :)

The important thing is that you helped. Literally everyone has something bad to say, but very few find the time to do something good.

After merging (https://github.com/bcit-ci/CodeIgniter/commit/23824b85d2e51f1f7930631bd84143ff9c078b50) I got the following:
A PHP Error was encountered
Severity: Notice
Message: Indirect modification of overloaded property CI_Input::$security has no effect
Filename: core/Input.php
Line Number: 133

Is the added magic method __get($name) {...} mandatory for this task?

A forgot to mention the real error:
A PHP Error was encountered
Severity: Error
Message: Cannot assign by reference to overloaded object
Filename: core/Input.php
Line Number: 133

The same might happen with other property names too, after fixing $this->security.

Yep, the quick and dirty solution is to change __get to &__get and change the assigns by reference (lines 133 and 138) to normal assignments...
narfbg can you revert and let's just do it in a function to avoid magic method mines?

authors: Ignasimg avenirer ivantcholakov narfbg


text:
Fixing build on php 7.2 env

Following travis error build on php nightly at #632 . When it get green, we can remove from allow_failures

On php nightly env, now get error:
1) CodeIgniter\Cache\Handlers\RedisHandlerTest::testGet

Failed asserting that null is identical to 'value'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Cache/Handlers/RedisHandlerTest.php:91

2) CodeIgniter\Cache\Handlers\RedisHandlerTest::testGetMetaData

Failed asserting that Array &0 (

    'expire' => 1501161279

    'mtime' => 1501161281

    'data' => null

) is false.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Cache/Handlers/RedisHandlerTest.php:140

We may need to skip tests for it.

modified RedisHandler::getMetaData() with false and null comparison for RedisHandlerTest::testGetMetaData error.

Now got different error:
1) CodeIgniter\Cache\Handlers\RedisHandlerTest::testGet

Failed asserting that null is identical to 'value'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Cache/Handlers/RedisHandlerTest.php:91

2) CodeIgniter\Cache\Handlers\RedisHandlerTest::testGetMetaData

Failed asserting that null is identical to 'value'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Cache/Handlers/RedisHandlerTest.php:145

It seems something different behaviour in php nightly env for $this->redis->hMSet() process.

still got error in RedisHandlerTest::testGet(), probably add version_compare() in RedisHandler::isSupported() ?
	public function isSupported(): bool
	{
		return extension_loaded('redis') && PHP_VERSION <= '7.2.0';
	}

I've just applied php 7.2 check in RedisHandler::isSupported(), and now got error in routing part:
1) CodeIgniter\CodeIgniterTest::testRunDefaultRoute

Failed asserting that '' contains "
Welcome to CodeIgniter
".

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CodeIgniterTest.php:43

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

2) CodeIgniter\CodeIgniterTest::testRunEmptyDefaultRoute

Failed asserting that '' contains "
Welcome to CodeIgniter
".

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CodeIgniterTest.php:59

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

3) CodeIgniter\CodeIgniterTest::testRun404Override

Failed asserting that '' contains "
Welcome to CodeIgniter
".

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CodeIgniterTest.php:135

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

4) CodeIgniter\CodeIgniterTest::testRoutesIsEmpty

Failed asserting that '' contains "
Welcome to CodeIgniter
".

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CodeIgniterTest.php:247

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

5) CommomFunctionsTest::testRedirectReturnsNamedRouteFirst

Failed asserting that null matches expected '/home/base'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CommonFunctionsTest.php:82

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

6) CommomFunctionsTest::testRedirectReverseRouting

Failed asserting that null matches expected '/home/base'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CommonFunctionsTest.php:99

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

7) CommomFunctionsTest::testRedirectNormalRouting

Failed asserting that null matches expected '/home/base'.

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/CommonFunctionsTest.php:114

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

8) CodeIgniter\Router\RouteCollectionTest::testAddRecognizesCustomNamespaces

Failed asserting that two arrays are equal.

--- Expected

+++ Actual

@@ @@

 Array (

-    'home' => '\CodeIgniter\controller'

+    'home' => '\controller'

 )

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Router/RouteCollectionTest.php:210

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

9) CodeIgniter\Router\RouteCollectionTest::testSetDefaultControllerStoresIt

Failed asserting that two strings are equal.

--- Expected

+++ Actual

@@ @@

-'godzilla'

+''

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Router/RouteCollectionTest.php:220

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

10) CodeIgniter\Router\RouteCollectionTest::testSetDefaultMethodStoresIt

Failed asserting that two strings are equal.

--- Expected

+++ Actual

@@ @@

-'biggerBox'

+''

/home/travis/build/bcit-ci/CodeIgniter4/tests/system/Router/RouteCollectionTest.php:230

/home/travis/build/bcit-ci/CodeIgniter4/vendor/phpunit/phpunit/phpunit:53

--

@lonnieezell I can only patch  tests/_support/Database/MockConnection::query() signature right now , probably needs different PR for other errors due to other errors complexities.

Ok, well, it's a start, thanks! Merging.

authors: lonnieezell samsonasik

license: mit

license_source: bigquery


text:
Add materialTheme field to ThemeData

Commit 2e94931 automatically adds a Material theme to the widget tree. However, this overrides any custom Material theme that might have been specified above the widget tree. Many apps might still use a mix of material and fluent_ui widgets. Now that a Material theme is always automatically added, allow a custom Material theme to be specified as part of fluent_ui.ThemeData with the optional materialTheme field.
If this field is not specified, the behavior is the same as before (it will generate a Material theme with the appropriate brightness based on the brightness of the fluent_ui theme).
Fixes #152.
Pre-launch Checklist

[X] I have run dartfmt on all changed files
[X] I have updated CHANGELOG.md with my changes
[X] I have run "optimize/organize imports" on all changed files
[X] I have addressed all analyzer warnings as best I could
[ ] I have added/updated relevant documentation
[X] I have run flutter pub publish --dry-run and addressed any warnings

Hello! Thanks for your contribution! Tho, I don't think adding a new property is the proper solution to the issue. Instead, I opened https://github.com/bdlukaa/fluent_ui/pull/155.

authors: bdlukaa klondikedragon


text:
🛑 Archive Booru (HyBooru) is down

In b5a503f, Archive Booru (HyBooru) ($MAOW_VERY_SECRET_SITE_2) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Archive Booru (HyBooru) is back up in 5eb26b0.


text:
🛑 Main is down

In 8dcf7f3, Main (https://bezathecat.com/) was down:

HTTP code: 530
Response time: 186 ms

Resolved: Main is back up in 7047ab4.


text:
Issue #4 Broken File Permissions during Usage

Cause: we make a copy of the file then format the copied file, but
this file's owner ship and permission are not preserved.
Solutions tried:

Investigated vim script's options to preserve file onwership while write a file, it seems to be not possible.
Investigated using cp -a or cp -p, unable to preserve owner.

Solution: overwrite file content of current file directly

please decline this PR, noticed issue while testing

repo: beanworks/vim-phpfmt


text:
Adding a FOSS license

Hi, I'd like to use this parser but it doesn't have a open source license (MIT, GNU 3, Apache 2.0, etc). Would you please add one?

Hi, I'd like to use this parser but it doesn't have a open source license (MIT, GNU 3, Apache 2.0, etc). Would you please add one?

Done! It's Apache2+MIT

Thank you! For replying quickly and for writing the parser. It's been so helpful

authors: ColinKennedy fasterthanlime


text:
Eliminate copied code in visualization

Specifically, the left/right/peak channel finding from Gamma_Analysis.py.
A code that takes a spectrum and an energy as input, and returns channels for left/right/peak, would solve the problem, and probably be useful elsewhere too.

This should be done once Mustapha's branch is merged into working-branch or master and Gamma_Analysis.py uses ROI_Maker.py properly.

Closed by #38

repo: bearing/radwatch-analysis


text:
Function body is indented when followed by a comment

Before:
function test() {
  return true;
}
//bla

After:
function test() {
      return true;
   }
   //bla

Note: I have temporarily 'solved' this problem in the beautify.js source handle_comment function, yet might have introduced another one :
        function handle_comment() {
            if (current_token.wanted_newline) {
                print_newline(false, false); /*instead of print_newline(false, true)*/

function foo() { var x; }
function bar() { var y; } // end bar
function baz() { var z; }

beautifies to
function foo() {
    var x;
}

function bar() {
        var y;
    } // end bar
function baz() {
    var z;
}

This is not cooperating.  Punting to 1.6.0.

authors: bitwiseman fvermont

repo: beautify-web/js-beautify


text:
cooperation

Here was the library where I started more than a year ago. But I realized today that it creates the same thing and has progressed a lot.
https://github.com/huntersofbook/naive-ui-nuxt
If you want to cooperate, I can deactivate my library or you can move to our side.
It's up to you. Having 2 identical libraries is not a good thing.

Thanks for this proposition.
The SSR support is already provided by naive-ui as explained in docs. This module provides extra features, you can check this issue (#9).
Thanks for your understanding.

I think you don't understand that there are 2 npm packages for the same topic. If you make a decision on what I wrote above, let's proceed accordingly.

These are 2 npm packages for this same topic with different goals and features. That's a good thing!
If you have ideas in mind to move this work forward, your contributions would be very appreciated!

No, it's not a good thing, people need to focus on one place.
I'm closing my project. I'll forward it to you.

I referred him to you.

people need to focus on one place

People choose the best for them, It's not up to us to decide. And please refer to this issue as well.

authors: becem-gharbi productdevbook

repo: becem-gharbi/nuxt-naiveui


text:
acls

i chage acls in event.json file to:
{
"accessType": "",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},
{
"accessType": "",
"principalType": "ROLE",
"principalId": "admin",
"permission": "ALLOW"
},
{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "$authenticated",
"permission": "ALLOW"
}
after login http://localhost:3333/#/login with username and password
http://localhost:3333/#/app/events -> 0k.
http://localhost:3333/api/events ->
{"error":{"name":"Error","status":401,"message":"Authorization Required","statusCode":401,"code":"AUTHORIZATION_REQUIRED","stack":"Error: Authorization Required\n    at C:\Users\VDP\Desktop\admin\node_modules\loopback\lib\application.js:344:21\n    at C:\Users\VDP\Desktop\admin\node_modules\loopback\lib\model.js:295:5\n    at C:\Users\VDP\Desktop\admin\node_modules\loopback\common\models\acl.js:437:23\n    at C:\Users\VDP\Desktop\admin\node_modules\async\lib\async.js:254:17\n    at done (C:\Users\VDP\Desktop\admin\node_modules\async\lib\async.js:135:19)\n    at C:\Users\VDP\Desktop\admin\node_modules\async\lib\async.js:32:16\n    at C:\Users\VDP\Desktop\admin\node_modules\async\lib\async.js:251:21\n    at C:\Users\VDP\Desktop\admin\node_modules\async\lib\async.js:575:34\n    at C:\Users\VDP\Desktop\admin\node_modules\loopback\common\models\acl.js:420:17\n    at C:\Users\VDP\Desktop\admin\node_modules\loopback\common\models\role.js:207:21"}}

+1

I'm closing it now because ACL's are not yet implemented in this project.
For general questions about LoopBack I recommend you to go to one of these gitter rooms and ask there:
https://gitter.im/strongloop/loopback
https://gitter.im/loopbackers/loopbackers.github.io
If it is a bug that is only in this project please reopen this issue.

authors: beeman brunocascio vdphuong

repo: beeman/loopback-angular-admin


text:
AttributeError: 'NoneType' object has no attribute 'chuninet'

File "/home/container/.local/lib/python3.12/site-packages/discord/ext/commands/core.py", line 235, in wrapped
ret = await coro(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/container/cogs/chunithm/records.py", line 48, in recent
ctxmgr = self.utils.chuninet(ctx if user is None else user.id)
^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'chuninet'

This should only happen if the utilities cog failed to load. Can you send me the bot logs (chuninewbot.log)?

chuninewbot.log

chuninewbot.log

You haven't migrated the database to the latest version. Run alembic upgrade head in the bot's virtual environment.

authors: Purloins beerpiss

repo: beerpiss/chuninewbot


text:
Filter out look-a-likes (?) from popular tokens

Still need to filter out the boosted pool bpt's correctly...

Tokens need to be blacklisted in cms.


text:
Run tests in GitHub Actions

Additionally, add some cleanup within the existing test suite to
handle non-determinism of which tests run in which order.

@freakboy3742 I request your review, and if you like it, please merge!
I intend to continue to pick pieces off of #5 until they're all merged in fairly minimal, self-contained PRs. Every time I make one of these fairly minimal, self-contained PRs, I end up learning new things about the codebase. This time, I learned that if you run the test suite in GitHub Actions in a different order than the order it runs on my laptop, you end up with tests that fail for seemingly mysterious reasons. Hence the new context manager.
Happy to address feedback from your review.

Hi! Somehow I have a lot of friendly, excited comments on your comments. Feel free to read them, or ignore them.

Looks good. I'm sure we can add more as time goes by (like adding beefore checks for linting).

Big +1 from me. :)

I'm interested why I've never seen the test ordering problem before. Makes sense why it might be a problem; it's just interesting to me that I've never seen it.

It's weird! I ran into in GitHub Actions, but I didn't run into it on my laptop. This was a reliable experience for me. I'm going to leave it a mystery for now; I agree it's interesting that neither you nor me experience it on our machines, but GitHub Actions does.

It turns out that I (in my capacity as repo admin) need to poke the repository to make the actions actually start triggering, so I've made a couple of small changes.

Fascinating! I didn't run into any such thing on my fork. Would be curious to know what you ran into, or feel free to not answer this if you think this question of mine is a boring distraction. Is this about allowing GH Actions to run for people without beeware/rubicon-java repo permissions?

One (the trigger for the action) I've flagged inline as a coment

I don't see the comment -- can you point me to it? What I do see is two build YAML files which are near-duplicates of each other.
I have just discovered that you can have one GitHub Actions workflow apply in multiple situations, per https://help.github.com/en/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#example-using-multiple-events-with-activity-types-or-configuration , so I am likely to submit a follow-up implementing that.

I've also added a placeholder for matrix builds (which we're going to need very soon)

I was avoiding matrix builds in this PR as part of a personal focus on YAGNI/minimalism. Having matrix builds in here is OK with me, too. :)

a separate build_status workflow that will re-run the tests when a PR is merged.

Cool!

(And thanks for the review & merge!)

The comment I referenced is https://github.com/beeware/rubicon-java/pull/9/files/59ead3e416b0a85ec00a762c38adbf62aa58dec6#r356425504.
As for the needing to poke it myself... that's interesting. Looking at the action history, I can see that there were a bunch of successful builds triggered by your commits... but none of those build seem to correspond to the commit hashes that are actually in this PR - it looks like the were all on an "github-actions-on-mac" build. The two commits attributed to you on this PR didn't trigger builds. I assumed that was because I was the owner... but maybe not? Anyway... it's a moot point now.
As for the multiple workflow files - that's actually with a purpose. The pattern I've used on other repos (cf toga is that the CI workflow is a full test on all platforms, preceded by code quality checks (linting etc); the Build status workflow is a smoke test on a single representative platform that can be used to flag whether builds are succeeding or failing.
The primary reason for this is the build status badge in the README. You can't have a build status badge on your README that is driven by the CI workflow, because any PR that fails will alter the state of the badge, regardless of whether it's merged. You need a distinct workflow that only triggers on commits to master. If CI passes on a PR, we should have a reasonable degree of confidence that result will persist into master; but we need to trigger a distinct "yeah, really, everything is OK" build on master to provide data to drive the badge.
As for YAGNI - I can understand that as a motivation, but this is a case where we're very definitely GNI... :-)
If you can find a better way to manage this, I'm open to suggestion - but in terms of billable time, I don't consider this a high priority for the moment.

repo: beeware/rubicon-java


text:
Exclude a test module from being built

The __phello__.foo module from Ouroboros breaks jar->dex conversion.

The failure is the result of the bytearray tests being fed data from container types: set, list, dictionary, etc.
I can't see exactly how this happens right now. Presumably this should have failed when the change that combined these types was introduced, but I'm not seeing where and when that occurred.

repo: beeware/voc


text:
(346) 779-7975

(346) 779-7975
Originally posted by @bejaranobasilia45 in https://github.com/bejaranobasilia45/3467797975/issues/7#issuecomment-570816936(346) 779-7975 #runSETUP

Www.trackMyip.cpm172.58.103.149

172.58.103.149

Www.trackMyip.com172.58.103.149

Www.trackMyip.com172.58.103.149

Www.trackMyip.cpm172.58.103.149


text:
Automate formatting a large repo to test CSharpier changes

I've been doing the following manually and it helps track down edge cases that are missed by our current tests before we get to the release candidate stage. Automating this process would make it easier.
When a PR is created.

Create a new branch pre-[nameOfCSharpierBranch] off of master on https://github.com/belav/aspnetcore
Format the new aspnetcore branch with the current CSharpier master code and commit it.
Format the new aspnetcore branch with the CSharpier code from the PR and commit it.
Automatically add a message the CSharpier PR linking to the new commit.

3 and 4 could be repeated with each new commit to the PR.
This process could also be done using a script locally, to avoid having to create the PR first.
This process also could use a different repo, or be configurable if running locally.

I started working on this, but there are a number of issues to figure out.
This is the current action I had, but I haven't tested it.
name: Validate PR
on:
  pull_request:
    branches: [ master ]
jobs:
  format_repositories:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        with:
          path: csharpier
      - run: echo "##[set-output name=branch;]$(echo ${GITHUB_HEAD_REF #refs/heads/})"
        id: extract_branch
        shell: bash
      - uses: actions/checkout@v2
        with:
          repository: belav/aspnetcore
          path: aspnetcore
      - uses: actions/checkout@v2
        with:
          path: csharpier-master
          ref: master
      - run: dotnet build csharpier-master/Src/CSharpier/CSharpier.csproj -c release
      - run: dotnet csharpier-master/Src/CSharpier/bin/release/net5.0/dotnet-csharpier.dll aspnetcore
      - run: |
          git checkout -b pre-${{ steps.extract_branch.outputs.branch}}
          git add -A
          git commit -m "Before changes"
          git push --set-upstream origin pre-${{ steps.extract_branch.outputs.branch}}
      - run: dotnet build csharpier/Src/CSharpier/CSharpier.csproj -c release
      - run: dotnet csharpier/Src/CSharpier/bin/release/net5.0/dotnet-csharpier.dll aspnetcore
      - run: |
          git checkout -b post-${{ steps.extract_branch.outputs.branch}}
          git add -A
          git commit -m "After changes"
          git push --set-upstream origin post-${{ steps.extract_branch.outputs.branch}}

The issues I know of

It would try to create a new pre-branch on every commit to the csharpier PR
It doesn't yet create the aspnetcore PR from post-branch to pre-branch
It doesn't yet auto add some kind of comment on the csharpier PR to tell someone to go look at the aspnetcore PR

A powershell script was created that mostly accomplishes what we need, but isn't yet run in a github action.

doing this manually is good enough

repo: belav/csharpier


text:
Demo: bem-xjst v8.x RC

Настоящим постом хочу продемонстрировать вам как будет выглядет API bem-xjst v8.x. Все пока на стадии RC, поэтому хочу выслушать ваше мнение по поводу всего этого.
Изменения, которые войдут в v8.x

Все режимы теперь ведут себя одинаково: переопределяют значение из BEMJSON. (major)
Добавлены недостающие режимы: mods() и elemMods() для установки модификаторов. (minor)
Добавлены шорткаты режимов для добавления: addMix(), addAttrs(), addMods(), addElemMods(), addJs(). (minor)
Добавлены шорткаты для добавления content:  appendContent() и prependContent(). (minor)

TLDR; Песочница bem-xjst v8.x RC: https://goo.gl/ZeY4xL, в которой можно попробовать все эти вкусности…
Технические подробности
1. Все режимы теперь ведут себя одинаково: переопределяют значение из BEMJSON. (major)
Сейчас значение из шаблона режима content(), bem(), cls(), tag() переопределяет значение указанное в BEMJSON. Если вам нужно расширить значение из BEMJSON в шаблоне нужно использовать applyNext() и this.extend()/concat().
Однако режимы mix(), js(), attrs() сейчас расширяют значение из BEMJSON.
Разное поведение режимов вносит некоторый раздрай и постоянно приходится держать в уме кто как себя ведет.
В v8.x мы привели все режимы к одинаковому явному поведению: переопределение значения из BEMJSON. Если вам нужно добавить что-либо, то теперь это можно будет сделать в явном виде — см п.3.
2. Добавлены недостающие режимы: mods() и elemMods() для установки модификаторов. (minor)
Под капотом эти режимы просто шорткаты к уже привычным всем конструкциям:
// mods()({something: myValue})
def()(function() {
    this.mods = {something: myValue};
    return applyNext();
});

и
// elemMods()({something: myValue})
def()(function() {
    this.elemMods = {something: myValue};
    return applyNext();
});

Как видно из примеров режимы mods() и elemMods() не имеют своей собственно очереди шаблонов, а добавляют шаблоны в стек к режиму def().
По умолчанию mods() и elemMods() возвратят вам значения из this.mods и this.elemMods соответственно.
Пример:
// BEMJSON
{ block: 'b' }

//Шаблоны
block('b').def()(function() {
  return JSON.stringify(apply('mods'));
});

//Результатом будет:
[]

3. Добавлены шорткаты режимов для добавления: addMix(), addAttrs(), addMods(), addElemMods(), addJs().
Так как все режимы теперь переопределяют значение, то чтобы компенсировать необходимость писать applyNext() для накапливания результата были введены шорткаты для уже существующих режимов add*().
Под капотом addJs()({ somekey: someval }) это
js()(function() {
  return this.extend(applyNext(), { somekey: someval });
});

Под капотом addMix()({block: 'mixed' }) это
mix()(function() {
  var res = applyNext();
  if (!Array.isArray(res)) res = [ res ];

  return res.push({block: 'mixed' })
})

Для остальных режимов аналогично.
Как видно из примера шорткаты add*() не имеют своего стека шаблонов, а просто добавляют шаблон в стек соответствующего режима.
И, естественно, вы можете накапливать результат:
// Шаблоны
block('b')(
   addJs()({ a: 1 })
   addJs()({ b: 2 })
   addJs()({ c: 3 })
);

// BEMJSON
{ block: 'b' }

// Результат:

4. Добавлены шорткаты для добавления content: appendContent() и prependContent().
// Шаблоны:
block('b')(
    appendContent()(', templates!'),
    appendContent()('!!1'),
    prependContent()('(〜￣▽￣)〜 ')
);

// BEMJSON
{ block: 'b', content: 'Hello' }

// Результат:

(〜￣▽￣)〜 Hello, templates!!!1

Как вы уже наверное догадались, это тоже шорткаты и они добавляют шаблоны в стек режима content(). Пример:
// appendContent()(', templates!') это тоже самое что и:
content()(function() {
  return [
    applyNext(),
    ', templates!'
  ];
});

Классные изменения! Спасибо. Ждём релиз.

Много раз напарывался что в BEMTREE не отрабатывал js()(true)
По поводу addJs раз это фактически extend, чтож не назвать тогда extendJs (но это уже чисто мое ИМХО)
А так, релиз огонь!

@JiLiZART а в BEMTREE и не должен отрабатывать js(). Там же всего 2 моды def и content.

Ещё replace

Т.е то что фактически выплевывает bemjson не может прописать js:true в исходном дереве? ну или js: {param: 1, param: 2}

@JiLiZART ничего не понял. Кто куда что выплевывает? В каком исходном дереве? Приведи пример, пожалуйста.

Ну банально я пробовал скажем внутри bemtree блока сделать элементу js параметры на основе данных
elem('somename')(
  js()(function () { return this.data.someParams }),
  content()(function() { return 'somecontent' })
)

По поводу addJs раз это фактически extend, чтож не назвать тогда extendJs (но это уже чисто мое ИМХО)

А мне addJs больше нравится. Меньше букв, лаконично.

@JiLiZART ну все правильно, нету у bemtree js() он и не вызывается

authors: JiLiZART basilred belozyorcev kompolom miripiruni vithar

repo: bem/bem-forum-content-ru


text:
Поочередный обход нескольких url

Здравствуйте, сейчас изучил модуль gemini. Очень интересный  и удобный, НО:
моя задача в том, чтобы сделать следующее - заходим на главную, жмем на поп-ап окно, логинимся, парсим несколько url и переходим по ним, где также делаем скрины.
Путей решения пока не нашел, т.к. gemini при нескольких, даже вложенных тестах выполняет в отдельных открытых окнах хрома и например авторизация в родительском тесте не означает, что в дочернем мы также будем авторизованы, что можете посоветовать для решения моей задачи и главное, подойдет ли gemini для таких целей.
Если есть возможность более быстрой связи (скайп, телефон и т.д.), был бы рад обменяться.

// cc @arikon @SevInf

Решением может быть авторизация для каждого suite. Это можно делать в хуке before.
Последовательно переходить по указанным url-ам в рамках одного suite gemini не умеет. Разве только что кликать в конкретные ссылки, находимые по селекторам.
Для оперативного общения есть чатик в https://gitter.im/gemini-testing/gemini

authors: arikon combatx007 tadatuta


text:
does not work right when record-holders are demolished and record returns to a former holder.

https://github.com/benda18/Rollercoaster_Evolution/blob/352ba06a7da4cd8dc37ff9c4864e434c4626e054/shiny/rollercoasters/module.R#L303C3-L317C36

[ ] see kings_island vs carowinds vs kings_dominion: son_of_beast speed.mph

This seems to be working fine today.

not addressed; not to be fixed.


text:
Month picker

I want month-picker. Do you plan to it make?
It is like this.
http://demos.telerik.com/kendo-ui/datepicker/index
Thank you.

The purpose of this element is to follow the material design spec as closely as possible (while borrowing hints from the android implementation). The material design spec doesn't have any kind of month selector UI that I'm aware of.

I think this issue should be reopened, it's very inconvenient to have to change month one by one. It's a missing feature from spec, we should take the lead and implement it until the spec are updated. Moreover, the way to do seems natural, as _gesture already check if the user is dragging vertically or horizontally, drag down could open the month picker.

authors: Zecat bendavis78 zukkun


text:
tags ?

Is it possible to push tags (Releases) on the github repo, as what is done on pypi, when incrementing build numbers ?

Sorry for the late reply. I tagged the different versions and pushed them to GitHub.

repo: benediktschmitt/py-filelock

license: unlicense


text:
suggestion for addcomma( ) ?

instead of having to use a while-loop and only process 3-digits at a time, maybe this gsub( )-based approach can speed things up ? I've just benchmarked it with a single integer slightly over 275-million digits long. it finished applying commas across  the entire input in just 6.7 seconds
   sub(/([0-9][0-9][0-9])+([.]|$)/, ",&")  # allocate initial mark, multiple of 3
  gsub(/[^,.][^,.][^,.]/, "&,")            # batch-process all 3-digit combos
    sub(/[,]+[.]+/, ".")                   # cleaning-up comma+period instance
  gsub(/^[^0-9]+|[^0-9]+$/, "")            # fail-safe cleanup at head and tail

      in0:  262MiB 0:00:00 [3.31GiB/s] [3.31GiB/s]
     out9:  349MiB 0:00:06 [52.3MiB/s] [52.3MiB/s] [<=> ]
( pvE 0.1 in0 < test.txt| mawk2 ; )  6.23s user 0.45s system 99% cpu 6.715 total

no worries. feel free to adapt it for your own use anywhere else. i just got the thing down to 4.7 seconds. not bad for formatting a single integer with 275-million-digits.

side question : how do you personally feel about go versus rust

@mogando668 Heh. :-) I haven't actually used Rust. The problem it's trying to solve is important: to be a better C or C++, which seems different and more lower-level than what Go is good for -- and Go will never get there with its large runtime, goroutine scheduler, and GC. I have concerns that Rust's learning curve is too steep with its relatively complex type system and borrow checker, and just from what I've seen Zig suits my taste better. But again, I haven't tried Rust so can't speak with any kind of authority.

repo: benhoyt/goawk


text:
Target or URI doesn't exist for the package

Error trying to retrieve the package.  Any ideas?

To let me analyse, send:

The error stack trace, not only title.
Your pubspec.yaml dependencies section to let me review you install it's correctly.

Hi, i'm closing this.
If the issue persist, please, reopen.

authors: XtremeTheory benhurott

repo: benhurott/flutter-masked-text


text:
Proposal for no-named-as-default

I've taken to doing this sometimes:
// foo.js
export const foo = 'foo';
export const bar = 'bar';
export default foo;

This allows me to import foo in a more versatile way:
import foo from './foo';            // I get the default
import {foo, bar} from './foo';  // In this case - I don't need to remember foo is the default and handle it differently

Currently no-named-as-default would object to the first import above, since I am importing the default export and naming it foo which conflicts with a named export. However, in this case, both those exports are the exact same thing, so I don't see the harm.
It seems like we could allow this specific usage through via some static analysis.

Being "more versatile" there is also being less explicit.
Also, you don't ever need to remember that foo is the default; because eslint-plugin-import will tell you.
I would be a strong -1 on allowing for this usage; a value should only be exported from one place in a module.

authors: jamestalmage ljharb

repo: benmosher/eslint-plugin-import


text:
facing Unhandled exception

Im getting the  exception show in the below image:

please help me to resolve this

Without more info (code snippet, ...), I can't help you.
Le 26 févr. 2018 10:14 AM, "GIRISHBR07" notifications@github.com a écrit :

Im getting the exception show in the below image:
[image: image]
https://user-images.githubusercontent.com/33625172/36662109-567a34ac-1b03-11e8-8955-442c1118dc40.png
please help me to resolve this
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/benoit74/nzy3d-api/issues/10, or mute the thread
https://github.com/notifications/unsubscribe-auth/AGxeiVvrJDoF3gDP7cs_-sOdiTUYJT4vks5tYnXVgaJpZM4SS5JF
.


text:
Prevent clash with already existing string_compat (https://github.com/lrascao/string_compat/)

[Fix #9]
Note: this is a breaking change.

Tests are failing (travis-ci), but locally they aren't.

@benoitc, does this seem OK to merge?

@benoitc, does this seem OK to merge?

@benoitc, does this seem OK to merge?

i will have a look on it this week. I think I may have an app around depending on string_compat so it will have to br a major version

Sure, if it's anything like Semantic Versioning it'll have to be a major.

Did you have a chance to look at this? Should a release of unicode_util_compat be dependent on a library consuming it (genuine curiosity)?

The release is more likely dependent on my busy schedule at the moment :) I
will take care of it over the week-end. Sorry for the delay.
On Sat, Oct 24, 2020 at 3:18 AM Paulo F. Oliveira notifications@github.com
wrote:

Did you have a chance to look at this? Should a release of
unicode_util_compat be dependent on a library consuming it (genuine
curiosity)?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/benoitc/unicode_util_compat/pull/10#issuecomment-715650492,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAADRIXHSYYTNATQ4KB7XLTSMITPHANCNFSM4RINNBMQ
.

No problem. I just wanted to understand the motivation really. Thanks.

ping

afai I was just wondering, but where is actually use this string_compat library beside the rebar3. I do think it's hard to  replace that names as it makes sense for the user to have a string_compat. wouldn't it be possible for the upstream project to ignore string_compat when this lib is installed?

The problem happens when different dependencies import both these libs (unicode_util_compat and string_compat). I'm used to seeing lib.'s (since there's no namespace in Erlang) modules start with either the lib. name or an indication of it, but understand if you don't want to change it. Let me know: if it has to remain as-is then this PR and the associated issues might make no sense, and we'll have to find a different alternative.

wouldn't it be possible for the upstream project to ignore string_compat when this lib is installed?

I don't understand how we'd do this (also note: I'm not affiliated with string_compat).

For reference: we were using unicode_util_compat 0.4.1 "alongside" string_compat and the issue only revealed itself after we bumped to 0.5.0.

On 2 Nov 2020, at 13:24, Paulo F. Oliveira notifications@github.com wrote:
For reference: we were using unicode_util_compat 0.4.1 "alongside" string_compat and the issue only revealed itself after we bumped to 0.5.0.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/benoitc/unicode_util_compat/pull/10#issuecomment-720440496, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAADRIQCYFJNRMFULFYF42TSN2QJNANCNFSM4RINNBMQ.

why not simply using string_compat from the unicode module though? What bugs me is that string_compat lib is inferior in terms of features. Maybe another way would be just bumping author release. I will ping him.
Benoit

Yeah, but there's a couple of considerations there:

dependencies might be using string_compat which would make jumping to unicode_util_compat a mess (since we'd have to fix a dep., bump a consumer, fix a new dep., bump another consumer)

A uses string_compat
    B consumes A
        C consumes B
            D consumes C and uses unicode_util_compat (when bumped there's a conflict)

I understand it might bug you. To be honest, what bugs me is the fact that unicode_util_compat's string_compat module came later than the lib. for which we're trying to resolve the issue, and used a module name that was already being consumed elsewhere.

If it's not a choice for you to change name, there's no issue here; I accept your choice. We close the PR and move on 😄

@benoitc, given your apparent choice of preferring to keep a more complete string_compat module in this lib. do you see it reasonable to close this PR and the associated issue (which is part of why we created the PR).

@paulo-ferraz-oliveira no i'm still undecided. I mean I can do a  major release with the change, it won't impact myself but i'm more thinking to people that eventually use it. Though a simple warning would do the trick. Let me the day :)

Sure, let me know and then will move forward. No hurry here.

For completeness: the implementation direction I took here was one you suggested in the linked issue - https://github.com/benoitc/unicode_util_compat/issues/9#issuecomment-691324665. I guess I should have waited for your reply to my comment before moving forward. 😄

Yeah, but there's a couple of considerations there:

dependencies might be using string_compat which would make jumping to unicode_util_compat a mess (since we'd have to fix a dep., bump a consumer, fix a new dep., bump another consumer)

A uses string_compat
    B consumes A
        C consumes B
            D consumes C and uses unicode_util_compat (when bumped there's a conflict)

If you are able to bump unicode_compat_lib, can't you either bump string_compat?  I mean the change would be transparent if unicode_util_compat have a new dependency string_compat .  Since string_compat would be the original one updated, then it would update old version of the lib without breaking their API. Rebar3 always use upstream to get the version, so unless you have this case :
In the case you have a customer upstream app using string_compat and another lib that depends on unicode_util_compat then you can  temporarly have upstream adding unicode_util_compat as a dependency. Upstream always takes the lead with rebar3.
Would that work for you?

I don't control all the lib.s I consume and some maintainers (even internal) are not comfortable with moving stuff just to remove this apparent impediment.
I do control one lib. using unicode_util_compat at a top-level (and the issue was more aggravated when that lib. starting importing hackney, since it uses 0.5.0 which causes the clash 😄). unicode_util_compat importing string_compat would probably solve it, though, since my initial issue is a clash which would then disappear with disappearance of the module I just renamed (in this PR).
So, I can propose unicode_util_compat imports string_compat in a version that is the merge of both these modules (so interface is not broken). Would that work for you?

Any news on this?

Any news on this?

Any news on this?

string_compat will be deprecated in favour of unicode_string_compat . I am unsure yet how we can smooth the transition for people, the easiest i see would be string_compat importing unicode_string_compat. I will tqke care of it today for the hackney release.

To smooth transition:

either unicode_util_compat imports string_compat (that way the name remains the same), but you'd have to move your functions to that lib., or
string compat gets moved into your (local) string_compat module, in which way function naming clash would also be prevented.

You may wish to decline this pull request, though, since it makes no sense to rename stuff if that's not the expected route.

This pull request won't be required after recent changes and the maintainer's general directions for the lib.

I edited my previous comment, but to make it more clear, the strin_compat application aftr discussing with the author is deprecated in favour of this one since it is supposed to have a short time life (it will be useless once people starts to user Erlang >= 20).
Thanks for the patch and all the useful feedback anyway!

Sure thing, @benoitc. Cheers.

authors: benoitc paulo-ferraz-oliveira


text:
enhancement: csv table wizard

When blogging about data, creating either the special markdown for a table or html is a pain once there are, say, 10-20 rows of data.
How could inserting tables of data be facilitated in stackedit?
From a design perspective, I guess there would need to be a table button on the UI.  This would pop up a window giving the user a box to paste or type their csv into, a button to pick a local file instead (using the button inserts the csv text in the file into the csv box), and an insert  button that inserts a markdown formatted table based on the csv text in the csv box into the document.
Some pieces of the kinds of code for a table wizard might be repurposed from my github project html5csv -- you don't need to adopt the whole library. Feel free to reuse code as needed from it.  As an exception to any licensing issue with the granted GPL license I would additionally give permission to use the code I wrote in this project.
Some things that are in html5csv:
* rfc4180-friendly one-char-at-a-time csv parser
* file reader example for reading from a user-selected csv file
Obviously, these can be found in other places too.
I'm not sure I know enough about the stackedit project's organization (or have enough time) to contribute a pull request, but if there is some way I could help, let me know.

Potential solution:
https://gist.github.com/retrography/94943548b1dcc4309204ffae3bd98a16

I've tested and it works great. Just say that there are TWO suffixes: tsv (TAB separated values) and csv (COMMA -> , separated values).
I struggled for 2 mins, 'til I read the source... :D

I wrote that yesterday out of desperation. I didn't get the time to
proofread it or document it. I am glad it worked for you. Will add some
comments later on to make it usable to everyone.
--
Mahmood Shafeie Zargar
Sent with Airmail
On May 6, 2016 at 16:34:15, Manuel López (notifications@github.com) wrote:

I've tested and it works great. Just say that there are TWO suffixes: tsv
(TAB separated values) and csv (COMMA -> , separated values).
I struggled for 2 mins, 'til I read the source... :D
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/benweet/stackedit/issues/762#issuecomment-217551299

You should consider to contribute to the markable-it project... This is a FASTER way to write tables than GMF solution, which follows the "ASCII art WYSIWYG" markdown principles, but it's a bit too verbose to my tastes (and, if I already have a csv data, there's no way to do it faster, even vith vim :D)

authors: DrPaulBrewer mlopezgva retrography

repo: benweet/stackedit


text:
Changes to make_class.py

Hey, you guys realize you can't mix the affine from the filtered data with the BOLD data from the raw data, right? The raw data has its own affines, which are not the same as that for the filtered data. You either choose to use the raw data exclusively or the filtered data exclusively.

I would also appreciate if you would run it by me before changing my functions since you wanted the same from me.

Also looking through the merged commits now: Someone explain to me the point of making the .design_matrix() output a tuple? It seems useless to me because it can just be taken from .behav[:, 4].

Yes, you are right. I think we should only use the raw data instead of filtered data since it may cause further complexity. So please remove the lines that you feel not appropriate. Sorry about that. For your second concern, I separated behave[:, 4] which is response 0 or 1 from design matrix because we should not include Y in the design matrix X.

I think we should ask @yfxia @karenceli @j170382276 first before deciding which data set to use. The level of complexity should be the same regardless of whether we use the raw or the filtered data; the concern is that we need to pick one.
I agree with your point about not using the response as a regressor. I will remove these columns now. However, my question was concerning why the .design_matrix() method returns a tuple.

I think we can stick to the first one for now because I planned to test my smoothing function to initially filter some data and compare the results. I'm not sure what the provided filtered data has filtered out but I just want to see how the smoothing helps.
I'm working on run_logistic_model script right now, in that file, I will need both design matrix and response category (which are 0 and 1 in this case) outputs separately from .design_matrix(). They will be the inputs for logistic model in sklearn package.
Does it make sense?

I understand your concern with inputs for the sklearn package, but it's just as easy to pull the responses using .behav[:, 4]. Making the output of .design_matrix() into a tuple with something unrelated doesn't help our performance at all but is at the same time detrimental to our code's clarity.

I see what you mean and I agree with it. Could you make changes on make_class.py and I will continue working on logistic model? Thanks a lot for clarification!

@VictorKong94, I ran into an error when I was using the .design_matrix() function in make_class.py.
In Line 79, design_matrix[:, 1:num_regressors] = self.behav[:, regressors], if I set euclidean_distance to False, then it will become  design_matrix[:, 1:2] = self.behav[:, regressors]. The LHS has one column, whereas the RHS has two columns.

I haven't made a pull request since make_class.py was changed earlier. I'll do that now and you tell me if you still get the same error.

I've run into a problem now too. The class is no longer passing my tests. Give me a bit please.

Try it now.

authors: VictorKong94 liuanna yfxia


text:
imon-percent widget

A widget that displays percentage imon-data in the form of icons (units), similar to other widgets like percent-online.
The user can:

Choose any country/region with any indicator that has "%" in the `displaySuffix' field and whose max is no more than 100. If the chosen combination does not have any data, an error is shown in the settings.
Resize the widget without distorting it (and increasing/decreasing the size of the icon/value as a result).
Choose a color for the "filled" icons/the icons that represent the value.

Unresolved issues:

The api does not have a flag/indicate what type of percentage it is, so for now any indicator that could use another icon that the default 'user' icon is in Settings.icons.

Looks great, Mariam!

authors: blaringsilence brainheart


text:
Add fuzzy matching full text search

If there are no results we could run a fuzzy search with the same search term and show these results

Some relevant tutorials

https://www.freecodecamp.org/news/fuzzy-string-matching-with-postgresql/
https://arctype.com/blog/postgres-fuzzy-search/

Add the index to the searchable document (Via materialised view)
Set similarity threshold and test how it works (particularly with german texts)
Create a new Remote Procedure Call
The frontend calls the fuzzy search when the normal search leads to no results.
Show the results on the frontend. (Maybe highlight the text fragments)

repo: berlin/haushaltsdaten


text:
🛑 WEB PRINCIPAL DAP is down

In 5c8d833, WEB PRINCIPAL DAP (https://dap.ula.ve) was down:

HTTP code: 0
Response time: 0 ms

Resolved: WEB PRINCIPAL DAP is back up in 52dd65b after 16 hours, 56 minutes.

repo: berlinserver/estatus


text:
Invalid @XmlElementRef : Type "class java.lang.Double" or any of its subclasses are not known to this context.

it seems that the element is generating incorrectly "@XmlElementRef" instead of "@XmlElement".
public class AllowedValuesType
    extends AbstractSWEType
    implements Serializable
{
    private final static long serialVersionUID = 1L;
    @XmlElement(type = Double.class)
    protected List<Double> value;
    @XmlElementRef(type = Double.class)
    protected List<Double> interval;
    protected BigInteger significantFigures;
......

XSD:
    <complexType name="AllowedValuesType">
        <complexContent>
            <extension base="swe:AbstractSWEType">
                <sequence>
                    <element maxOccurs="unbounded" minOccurs="0" name="value" type="double"/>
                    <element maxOccurs="unbounded" minOccurs="0" name="interval" type="swe:RealPair"/>
                    <element maxOccurs="1" minOccurs="0" name="significantFigures" type="integer"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
<simpleType name="RealPair">
		<restriction>
			<simpleType>
				<list itemType="double"/>
			</simpleType>
			<length value="2"/>
		</restriction>
	</simpleType>

I Second this issue.

You will find that doing substitutions on simple data types is probably going to cause a lot more issues. the Java type system is much more limited than the XSD one and hence the JAXB runtime needs all these annotations to figure out how to enforce the additional rules of the XSD model with Java properties. I wrote the plugin to simplify the Java class model where the attribute field would be of a complex type with possible sub type implementations. If you can create a repeatable test failure, I can have a look what happens in the XJC compiler.

Let me see if I can throw together an example, I'm not using Double, it's a complex type, but it's giving the same subclasses are not known to this context.

authors: bertramn bghost4 hamza-zag

repo: bertramn/jaxb-substitution-plugin


text:
🛑 francep2p.org is down

In 51823f8, francep2p.org (https://francep2p.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: francep2p.org is back up in 3a2aa98.

repo: berty/uptime


text:
gulp-browserify doesn't like bespoke-notes plugin

Hey,
I'm just starting using bespoke, and are lame in javascript (<24hrs of experience), but I noticed that there's a slight problem when using gulp-browserify with bespoke-notes:
[20:42:05] Finished 'css' after 1.44 s
[20:42:05] Plumber found unhandled error:
Error in plugin 'gulp-browserify'
module "./style" not found from "./node_modules/bespoke-notes/index.js"
[20:42:05] Finished 'js' after 1.9 s
[20:42:05] Starting 'build'...
Strange enough, it all works with 'npm start', somebody help please :)

Hi @sokoow.
I've done some tests and the problem comes from medikoo/bespoke-notes. The README says that if your CJS bundler does not support CSS modules you should do the following :
notes = require('bespoke-notes/dom');

This triggers code from this file which does not seem to work properly :

From what I've understood here, it should be arguments[1]
Maybe there should be a default option for slideWidth to prevent this if.

I'm closing the issue since it does not come from the generator. Maybe you should file an issue on medikoo/bespoke-notes.

authors: hsablonniere sokoow

repo: bespokejs/generator-bespoke


text:
Login page is giving error

TokenMismatchException in VerifyCsrfToken.php line 67:

Hello,
Can you add some context for this error ?

I was trying to open admin section and It was coming when I submitted login information.

Looks like a session issue, check your session parameters.

How do  you get to the admin section?

Now, It is fine. I think, error was because of cache.

authors: bestmomo flik grolock51


text:
Limite de défiscalisation des heures supplémentaires

Depuis le 1er janvier 2019 les heures supplémentaires sont défiscalisées et désocialisés, avec un plafond à 5000€/an. Le gouvernement a augmenté ce plafond à 7500€ pour les salariés réalisant des heures supplémentaires pendant la période « d'État d'urgence sanitaire ».
Je ne suis pas sûr que nous ayons besoin d'intégrer cette règle, mais je la trouve intéressante car elle illustre, une fois de plus, qu'une règle en apparence simple cache en fait un niveau de complexité délirant.
Le calcul sur l'exonération des heures supplémentaires nous avait déjà donné du fil à retordre. Je référence ici le paragraphe « Modalités pratiques de mise en œuvre de l’exonération » sur lequel nous nous étions basé pour l'implémentation.

En principe, l’employeur doit distinguer d’une part le salaire brut et d’autre part les heures supplémentaires pour en déterminer séparément le montant imposable ou exonéré, ce qui implique de déterminer un plafond spécifique à chaque salarié en fonction des cotisations non couvertes par la réduction applicable au montant brut versé.
En pratique, il est admis que l’employeur applique la méthode suivante.
Cette méthode consiste à déduire de la rémunération brute totale (salaire en brut et heures supplémentaires en brut) l’intégralité des cotisations et contributions sociales déductibles (y compris la CSG et la CRDS), diminuée de la réduction proportionnelle de cotisations salariales sur les heures supplémentaires et majorée de la CSG non déductible de la CRDS.
Le montant ainsi obtenu se voit diminué du montant de la rémunération brute des heures supplémentaires exonérées diminué de la fraction de la CSG déductible afférente à cette rémunération dans le respect de la limite de 5 000 € nets par an.
Avec cette méthode, dans le cas où le taux moyen de cotisations et contributions salariales déductibles – hors CSG et CRDS – afférent aux heures supplémentaires est supérieur au taux maximum de la réduction proportionnelle de cotisations salariales, le reliquat est déductible de la rémunération brute imposable.
Le montant brut du plafond est obtenu en réintégrant la part déductible de la CSG. Ainsi, ce plafond est égal au montant net imposable des heures supplémentaires de 5 000€ auquel s’ajoute la part de la CSG déductible assise sur ces heures exonérées soit 5 358 €. Le détail du calcul est présenté ci-après.
Le plafond brut d’exonération des heures supplémentaires est calculé de la manière suivante :
5000 / (1 – (98,25/100) x (6,8/100)) = 5357,96, arrondi à 5 358 €

Source: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
C'était déjà un bon exemple de spécification absconse... C'est pire maintenant ! En effet le relèvement du plafond de 5000€ à 7000€ ne concerne que l'exonération fiscale mais pas la partie sociale...
Comme “expliqué” dans le passage cité de dsn-info, le plafond d'exonération de 5000€ correspond en fait à un plafond de 5358€ pour cause de CSG/CRDS non déductible, il faudra donc calculer de la même manière le nouveau plafond effectif, ce que l'administration n'a pas encore fait. Par ailleurs si les heures supplémentaires sont effectivement exonérées de cotisations sociales, elles sont tout de même assujetties à la CSG/CRDS et ceci de manière intégralement “non déductible” (une spécificité liée à l'exonération d'impôt).
Maintenant qu'il y a deux plafonds d'exonération (un social et un fiscal), deux régimes sociaux pour les cotisations y compris avec des règles déductibilité de la CSG/CRDS différentes, l'ensemble du dispositif est devenu incompréhensible, et les employeurs/éditeurs de logiciel de paie/comptables seront bien en peine de l'appliquer.

La réflexion est partagée, je ferme.

repo: betagouv/mon-entreprise


text:
Début d'une page "module"

Cette PR ne contient presque rien, juste une copie de /api-doc pour construire la page de démo du module pour les annonces.
Faire un blog de "configuration" côté intégrateur, interactif, où la personne peut tester divers paramètres venant de l'annonce comme l'âge du logement.
Et un bloc "intégration" qui présente sous forme de carte UI (bords gris fins, avec ombre) deux blocs : les questions à poser à l'utilisateur ; le résultat du calcul mes aides réno ampleur + le PTZ.

Quelques modifications sur le module "Rénovation d'ampleur"
wording question

[] Le logement sera votre résidence principale
ou bien celle de votre locataire

** Résultat**

Remplacer le liseré bleu par une box grise

** CTA**

Réduire le texte introductif - "Découvrez toutes les aides pour une rénovation énergétique votre logement"
CTA

Remplacer "Affiner ma simulation" par "J'affine ma simulation"

Remplacer le logo "maison" par un flèche (cf. CTA home Mes Aides Réno)

Footer

Ajouter à la Marianne le logo France Rénov'

Question ouverte

Est-ce qu'on ne reprendrait pas le tag "En 2024, les aides évoluent" au dessus du titre ? C'est une accorche d'actu qui fonctionne bien, non ?

C'est fait !
J'ai trouvé qu'un fond gris-bleu + un bord bas bleu comme sur le titre mettait bien en valeur le résultat.

@morganmerzouk je me demande si mon usePathname dans Header ne va pas diminuer la perf du site normal. Le problème, c'est que pour avoir un layout propre à /module, il faudrait mettre tout le reste dans un route group (site) à la racine... Un peu relou non ?

@morganmerzouk j'ai testé sur le déploiement, ça ne semble pas impacter la perf, donc je te propose de garder ça et on pourra mieux faire par la suite si besoin.

repo: betagouv/reno


text:
🛑 API Camino is down

In 87f80ce, API Camino (https://api.camino.beta.gouv.fr/titres) was down:

HTTP code: 0
Response time: 0 ms

Resolved: API Camino is back up in e945b2e.


text:
🛑 API Camino is down

In b4f0727, API Camino (https://api.camino.beta.gouv.fr/titres) was down:

HTTP code: 0
Response time: 0 ms

Resolved: API Camino is back up in 45dffb6.


text:
Assistants: added RunStepList(), RunStep() and MessageRetrieve()

RunService: added RunStepList() and RunStep()
MessageService: added MessageRetrieve()

Notes

I tested in my own project, but did not add tests to the Playground project here. Can add if needed
polling "RunStepList()" needs logic to trigger when a new "step" is identified. The streaming implementation of runs might benefit from handling this in the SDK. However, I have not looked closely at the streaming events, so it's possible that this is moot in that scenario.

Thank you very much for the PR, but I was also implementing this feature locally.

authors: kayhantolga pappde

repo: betalgo/openai