text:
Allow composing multiple matches to one response

Assume you have set up predicates that each matches one of a list of numbers (fx, PINs). Assume the expected response contains a block of xml or json for each matched result, but only for the matched values.
As I understand it, the first matching predicate wins, so the only way I see to do this is to create mocks with a predicates in the right order that matches all the expected combinations or with javascript.
I suggest to add a factility that allows all predicates to be evaluated and their respective outputs to be concatenated with a header and footer block.

Thanks for the suggestion, but I'm struggling to imagine what that would
look like. Do you have an example imposter JSON in mind you can use to
explain the idea a bit more?
-Brandon
On Mon, Oct 7, 2019 at 3:54 AM Daniel Demus notifications@github.com
wrote:

Assume you have set up predicates that match one of a list of numbers (fx,
PINs). Assume the expected response contains a block of xml or json for
each matched result, but only for each matched value.
As I understand it, the first matching predicate wins, sot the only way I
see to do this is to create mocks with a predicates in the right order that
matches all the expected combinations or with javascript.
I suggest to add a factility that allows all predicates to be evaluated
and their respective outputs to be concatenated with a header and footer
block.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bbyars/mountebank/issues/463?email_source=notifications&email_token=AAARFP7GFZ4LQBJVS3JO7XDQNL2L5A5CNFSM4I6BSAL2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HP77WFA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAARFP5WADTOSDPNA7ZXRJTQNL2L5ANCNFSM4I6BSALQ
.

I can send you the javascript implementation that produces the required result, if that would help.

Sure!
On Wed, Mar 18, 2020 at 3:35 AM Daniel Demus notifications@github.com
wrote:

I can send you the javascript implementation that produces the required
result, if that would help.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/bbyars/mountebank/issues/463#issuecomment-600491636,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAARFP5PD2SU6UGQTAN4ADDRICBWHANCNFSM4I6BSALQ
.

Sorry, I was distracted. Anyway here is an example of what I ended up doing in cucumber/groovy to generate a chunk of json, that could be sent to mountebank, so it could have a chunk of javascript, that could generate a chunk of XML with the correct aggregate response, when the input was a set of search values that contained some matches and some non-matches:
void fakeConditionalCSRPResponse(Map<String, SomeMockData> validValues) {
    List<String> responseBlocks = []
    validValues.eachWithIndex { String validValue, SomeMockData someMockData, Integer index ->
        responseBlocks << "\"${validValue}\": ${JsonOutput.toJson(Responses.blockOfValidResponse(replacementValue1, replacementValue2, replacementValue3))}".toString()
    }

    String injection = """function (request, state, logger) {
    const info = (logger || {}).info || (() => {});
    const xpath = require('xpath');
    const DOMParser = require('xmldom').DOMParser;
    const parser = new DOMParser({
        errorHandler: (level, message) => {
        const warn = (logger || {}).warn || (() => {});
        warn("%s (source: %s)", message, JSON.stringify(request.body));
        }
    });

    const validInputValues = new Set(${validValues.keySet().inspect()});
    const valuesToFind = xpath.select("//*[local-name(.)='ElementToMatchValueOf']", parser.parseFromString(request.body)).map(node => node.textContent);

    const bodyMap = {
        ${responseBlocks.join(',\n    ')}
    };
    let outputForNotFound = "";
    let outputForFound = "";
    for (let foundValue of valuesToFind) {
        if (validInputValues.has(cpr)) {
        outputForFound += bodyMap[cpr];
        } else {
        outputForNotFound += '${
                StringEscapeUtils.escapeJavaScript('''
                        <ns1:Elem1>
                            <ns1:Elem2>
                                <ns1:Elem3>11</ns1:Elem3>
                                <ns1:Text>Fejl i PNR</ns1:Text>
                            </ns1:Elem2>
                        </ns1:Elem1>''')}'
        }
    }

    const output = "${StringEscapeUtils.escapeJavaScript(
    """<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
        <ns1:WebServiceReponse xmlns="http://fake.io">
        <ns1:Ugh>
            <ns1:Yech>
            <ns1:TransactionId>4251934a-08f4-4d43-8527-2e9578400340.1</ns1:TransactionId>
            <ns1:ServiceId>Service1</ns1:ServiceId>
            <ns1:TransaktionsTime>2015-09-03T14:04:18</ns1:TransaktionsTime>""")}" + outputForNotFound + "${StringEscapeUtils.escapeJavaScript("""
            </ns1:Yech>
        </ns1:Ugh>
        <ns1:ResultList>""")}" + outputForFound + "${StringEscapeUtils.escapeJavaScript("""
        </ns1:ResultList>
        </ns1:WebServiceReponse>
    </soapenv:Body>
    </soapenv:Envelope>""")}";

    info('Result ' + output);
    return {
        headers: { Connection: "close", "Content-Type": "text/xml; charset=UTF-8" },
        statusCode: 200,
        body: output
    };

    }
    """

        String imposterJson =
"""{
    "protocol": "http",
    "port": $MOUNTEBANK_PORT,
    "name": "Example",
    "stubs":
    [
        {
            "responses":
            [
                {
                    "inject": ${JsonOutput.toJson(injection)}
                }
            ]
        }
    ]
}
"""
        return createImposterFromJson(imposterJson)
    }

I hope you read groovy.

Hi, sorry, is it working? Or going to be merged someday?

authors: bbyars demus-nine konflic

repo: bbyars/mountebank


text:
Question: about sidecar behavior for a mock

Hello,
I have a question about how to work with mountebank when there's a sidecar in the middle. When running my application (subject under test) to access its upstream dependencies, it needs to go through a specific address dependency.xyz.com (for example), that address points to an envoy sidecar which knows how to reach a given dependency.
My question is that I want upon registering an imposter, to then mountebank register itself with the sidecar such that is available for my subject under test to request. Is there a way to achieve this?
I was going through the documentation but couldn't find something similar.

There's nothing specifically for sidecar registration. I wonder if setting
the http_proxy (or https_proxy) environment variables would work? They're
respected for proxy operations http://www.mbtest.org/docs/api/proxies.
-Brandon
On Tue, May 19, 2020 at 4:05 PM Oscar Funes notifications@github.com
wrote:

Hello,
I have a question about how to work with mountebank when there's a sidecar
in the middle. When running my application (subject under test) to access
its upstream dependencies, it needs to go through a specific address
dependency.xyz.com (for example), that address points to an envoy sidecar
which knows how to reach a given dependency.
My question is that I want upon registering an imposter, to then
mountebank register itself with the sidecar such that is available for my
subject under test to request. Is there a way to achieve this?
I was going through the documentation but couldn't find something similar.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bbyars/mountebank/issues/553, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAARFPZVYK3RBJFBIP5Y7FDRSLYA7ANCNFSM4NFLHM3A
.

Thank you! Will try that

source: gharchive/issue

authors: bbyars osukaa

license: mit

license_type: permissive

license_source: bigquery


text:
Date on portal displays wrong

Describe the bug
A clear and concise description of what the bug is.
The date on the portal changes back one day after it has been saved
To Reproduce
Steps to reproduce the behavior:
When user chooses a date e.g. Oct 1 2023 in the Project Start Date and Project end date
Clicks Save and Continue
Comes back to the Project Planning page
Date displays as Sept 30, 2023
Expected behaviour
Date should remain as selected initially
Screenshots
If applicable, add screenshots to help explain your problem.
Logs/tracebacks
Additional context
Add any other context about the problem here.

Function that returns correct date in any browser timezone:
export const fixDate = (originalDate) => {
  const offset = 1000 * (new Date()).getTimezoneOffset() * 60;
  const adjusted = (new Date(originalDate)).getTime() + offset;
  const format = new Date(adjusted);
  return format;
}

repo: bcgov/CONN-CCBC-portal

license_source: github-api


text:
Remove application.owner column

Description

[ ] The application.owner column is unnecessary, and
[ ] we should use created_by instead.

Is this blocked by the row level security ticket? As that owner column is required for it (for now)

This ticket is not blocked by row level security - just need to find/replace owner_id with created_by in DB deploy sql files.

Following developers discussion, this change is not needed, and there may be use cases for having a separate field for owner vs created_by

authors: AntBush VB-at-Bis matthieu-foucault


text:
TBCM-24  - Right box 'Care Activities Bundles' checkboxes & Left side box 'Care Activity' selection.

user selects an option on the left
populates data with checkboxes on right according to the Care Activity
user can check the boxes of each activity
Formik state holds checked bundles for each activity
search available for each list

Hey Peter, the Develop branch just got updated, so just in case try rebasing and pushing again, seems something is failing (the failing check thing).

source: gharchive/pull-request

authors: PeterPavlatos leon-fw


text:
Generate e-Cert Feedback File Error Report

#2536 is a related ticket handling how these errors are communicated to the student.
Description of Task:
Trigger specific actions anytime we receive eCert feedback file records for specific student records.
Acceptance Criteria

[x] Configure a new report type called "eCert Errors" extractable through the Ministry interface which can be used to extract all eCert errors received between certain dates. Columns of the file should be consistent with the above section called "What's included on each report"
What's Included on Each Report
Each disbursement represents a distinct record/line on the report
eCert #
Application Number
Student First and Last Name, DOB
Indication of which file logged the error (eCert feedback file)
Student Study start and end dates
Date the error was logged
List of all error codes (not just the filtered ones) detected for each disbursement  (see the additional context section below for list of possible errors)
[x] When extracting report through interface, Start and End date filter should correspond to the dates when errors were logged
[x] The report should contain FT and PT applications in one report
[x] No MVP functionality to track action/status on these errors. This will be handled by SABC in JIRA.

Technical

[x] "Date the error was logged" from business AC should be the date_received from sims.disbursement_feedback_errors table.
[x] Report date based on the date_received from sims.disbursement_feedback_errors table.
[x] FT and PT filter should follow the same from the other reports.
[x] When extracting the report through the interface, display ALL error codes (i.e. use the 'complete' list).
[ ] E2E

Context:
The federal service provider (NSLSC/Finastra) sends a daily eCert Feedback file which sometimes contains error codes for particular applications disbursement requests. These error codes indicate there was at least one error in the list of validations which exist on the NSLSC side. For e.g., the address listed on a student's application is not recognized, or a student is missing a first name.
Some of the errors do not block the disbursement from being issued, but others do. For any errors which block disbursement, the student's application and disbursements are now completely in limbo and will not get resolved unless someone within SABC takes an action to resolve. However, without knowledge of which students have errors, there is no way for SABC staff to know which applications need attention.

Had a message with Guru and updated AC to confirm change of column name:

Each disbursement represents a distinct record/line on the report:
eCert # to eCert number
Application Number
Student First and Last Name, DOB
Indication of which file logged the error (eCert feedback file)
Student Study start and end dates
Date the error was logged
List of all error codes

authors: CarlyCotton andrewsignori-aot

repo: bcgov/SIMS


text:
Screen reader content order is wrong (iOS only)

Issue (iOS only)
On screen 1, the third block of text (starting with “With BC wallet…) gets skipped by the screen reader.
Screens 2, 3 and 4 currently read out only the headings and skip all other text, then repeat in sequence by reading out all the skipped text from screens 2, 3 and 4 without the headings, then the skipped third block from screen 1, then “Get started” (button text), “back,” and “next.”
The reading order for the biometrics page appears to be incorrect. It starts on a blank paragraph between the first and second paragraphs.
Fix
Check the semantic structure of these screens on iOS. There’s a sequencing issue in terms of how the reading order is currently being interpreted by the screen reader. Ideally, it should be:
• Title
• Headings
• Body text
• Navigation as appropriate depending on where it is expected to be used in the context of the user journey
*This order should be used throughout the entire app

@knguyenBC Still an issue? I seem to recall fixing some order issues you reported a while ago.

I don't see this as an issue anymore.

authors: jleach knguyenBC

repo: bcgov/bc-wallet-mobile


text:
20947 - Fix limited restoration to full filing saves or resumes with company Name change

Issue #: /bcgov/entity#20947
Description of changes:

Added isLimitedRestorationToFull condition to shouldShowUndoButton logic
Enhanced nameChangeHandler to properly handle numbered company names
Added logic to set legal name for numbered companies to satisfy Legal API requirement
Updated shouldShowEditedLabel to include Limited Restoration to Full scenario

Notes:

This is a temporary easy solution until we can implement the refractory long-term fix in ticket #20827

Test Screenshots:
Test locally with these scenarios:

[x] CC (Community Contribution Company) BC0884776
[x] BC (Limited Company) BC0884805
[x] BEN (Benefit Companies) BC0884873
[x] ULC (Unlimited Liability Company) BC0884875

Before Fix (Using Limited Company as an example):

After using the incorporation number as the name and clicking "save and resume later"
Upon resuming, the button incorrectly shows as "Edit"

After Fix:

Scenario 1: Numbered Name

After save and resume, button correctly shows as "Undo"

Scenario 2: Non-Numbered Name

After save and resume, button correctly shows as "Undo"

Results:

Submitted this filing successfully

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

/gcbrun

Temporary Url for review: https://business-edit-dev--pr-606-zy7umcr4.web.app

/gcbrun

Temporary Url for review: https://business-edit-dev--pr-606-zy7umcr4.web.app

/gcbrun

Temporary Url for review: https://business-edit-dev--pr-606-zy7umcr4.web.app

authors: AimeeGao bcregistry-sre

repo: bcgov/business-edit-ui


text:
Create computed column to generate submission id

Describe the task
The task is about creating a computed column to generate a submission id in the format ?????
Acceptance Criteria

[ ] computed column to generate id
[ ] id is in format ??????
[ ] third

Additional context

Add any other context about the task here.
Or here

Format suggested by CIF is:
YYYY-RFP-#-mmddhhmmss
where # is the stream ID

authors: BCerki pbastia

repo: bcgov/cas-cif


text:
As a CIF developer, I want to collect errors and metrics through Sentry

add Sentry to CIF, example from CIIP
Dev checklist:

[ ] create project in Sentry interface
[ ] env vars for cif instance
[ ] add the sentry boundary to _app

Hey team! Please add your planning poker estimate with ZenHub @AlexZorkin @dleard @pbastia

Thanks @pbastia ! How would I test this one?


text:
612 revise operations form

Implements #612

Some small suggestions for extra lines that can be commented out or deleted entirely.
On behalf of @Sepehr-Sobhani and his current rebasing miseries, I'd ask that you don't merge this PR into develop until he's finished fixing his PR and got it merged, since the changes made in this PR to models.py will impact Sep's PR.

Awesome thanks. I've cleanup up all the unneeded commented code in the operations schema you pointed out and will wait until Sepehr's PR gets merged.

repo: bcgov/cas-registration


text:
Fee Estimates - Fee Waiver Form

As an IAO User
I want to submit a fee waiver to the Ministry
so that I can seek Ministry approval

Assumptions & Scope
This will form the basis of the fee waiver workflow - in response to a fee estimate, an applicant could request a fee waiver. During this process, a FOI analyst prepares a recommendation based on the information provided by the applicant, and in most cases will send to the Ministry for decision. This story aims to digitize that process, allowing IAO and the Ministry to have the waiver determination form in the same place.
The fee waiver form doesn't become active until a request is On Hold
What is IN scope?
Navigation to the Fee waiver form
The form itself - including fields that will be auto-populated
Conditional logic of the form
Validations for the form
What is NOT in scope?
Approval of the Form (separate story)
Editing logic with the form (separate story)
Waiver application to fee estimate (separate story)
Acceptance Criteria
Scenario 1: Forms Dropdown

GIVEN I am on a general FOI request
WHEN I click on forms on the left hand nav bar
THEN I will see the following options in a sub-menu: CFR Form, Fee Waiver Form

Scenario 2: Activate Fee Waiver Form

GIVEN I have activated the "Forms" sub-menu
WHEN I click on Fee waiver Form
THEN I will be taken to the digitized fee waiver form

Scenario 3: Fee Waiver Form - Auto-Populated Fields

GIVEN I have activated the Fee Waiver form
WHEN the fee waiver form populates
THEN the request description; date range for records search, and total fees due will populate based on data from the application; and the Form status will default to "In Progress IAO"
AND the save button will be inactive

Scenario 4: Fee Waiver Form - Waiver Requested Date

GIVEN I am on the fee waiver form
WHEN I click on the calendar picker for Waiver Request Date
THEN a calendar picker will activate
AND I can NOT pick a date in the future

Scenario 5: Fee Waiver Form - Waiver Response Date

GIVEN I have activated the calendar picker for waiver request date
WHEN I select a date
THEN the date shall appear in the field
AND the waiver response date will auto-calculate to 20 business days from the request date
AND the field will not be editable

Scenario 6: Activate Fields - Type of Waiver

GIVEN I am on the fee waiver form
WHEN I activate the checkbox for Inability to Pay
AND/OR I activate the checkbox for public interest
THEN one, or both selections checked will activate the sections and automatically expand them for filling

Scenario 7: De-Activate Fields - Type of Waiver

GIVEN I am on the fee waiver form
AND the type of waiver options have been checked
WHEN I de-activate the checkbox for Inability to Pay
AND/OR I de-activate the checkbox for public interest
THEN one, or both selections checked will de-activate the sections and automatically close them

Scenario 8: Save Activation

GIVEN I am on the fee waiver form
WHEN I have updated any field
THEN the save button will become active

Scenario 9: Save form

GIVEN the save button is active on the fee waiver form
WHEN I click on the save button
THEN a toast will appear confirming a successful save
AND the changes I made to the form will persist

Scenario 10: Mandatory fields

GIVEN all the checkboxes in the waiver form are mandatory fields
WHEN I select "Yes" to any of the checkboxes
THEN the description field below will also become mandatory

Dependencies? What is the impact of this dependency? (If so, link dependency in the ticket, make it visible in a team´s backlog)
Validation Rules? (If yes, list here)
Design
https://jacklyn808742.invisionapp.com/console/share/3W2O64AP5C/933929007
Definition of Ready

[ ] Is there a well articulated User Story?
[ ] Is there Acceptance Criteria that covers all scenarios (happy/sad paths)?
[ ] If there is a user interface, is there a design?
[ ] Does the user story need user research/validation?
[ ] Does this User Story needs stakeholder approval?
[ ] Design / Solution accepted by Product Owner
[ ] Is this user story small enough to be completed in a Sprint? Should it be split?
[ ] Are the dependencies known/ understood? (technical, business, regulatory/policy)
[ ] Has the story been estimated?

Definition of Done

[ ] Passes developer unit tests
[ ] Passes peer code review
[ ] If there's a user interface, passes UX assurance
[ ] Passes QA of Acceptance Criteria with verification in Dev and Test
[ ] Confirm Test cases built and succeeding
[ ] No regression test failures
[ ] Test coverage acceptable by Product Owner
[ ] Ticket ready to be merged to master or story branch
[ ] Developer to list Config changes/ Update documents and designs
[ ] Can be demoed in Sprint Review
[ ] Tagged as part of a Release
[ ] Feature flagged if required
[ ] Change Management activities done?

@JHarrietha-AOT @KaraBeach @arielleandrews - Main story for navigating to and population of fee waiver form.
Of note - please look at scenario 4 and 5 - I was just thinking as I filled it out, how handy it would be to record those dates so we can auto-populate the waiver response date. This will also likely be required for future reporting needs. Adding the date picker will require a design update, my assumption is the waiver response date will not be editable, since it is based on the received date.

Status: Implementation of all ACs with API integration is completed.
Pending : Minor validation bugs exists. Need to do a thorough testing and fix all the bugs.

authors: aparna-aot m-prodan

repo: bcgov/foi-flow


text:
Initial Upload

Initial upload is done. Could you please review it?
Thanks,
Sergey

We don't need to merge from main to repo-mountie/add-compliance. This PR was created in error.

repo: bcgov/jag-csrs-portal-public


text:
Update Mediator Configurations

Related to https://github.com/bcgov/DITP-DevOps/issues/113

These configurations have been deployed to dev, test, and prod`, and smoke tested.

Updated the PR with a new commit to migrate existing instances to a persistent queue configuration and eliminate the -pq instances; Migrate existing mediator instances to a persistent queue configuration.
The update is based on this request; https://github.com/bcgov/DITP-DevOps/issues/113#issuecomment-1856593037
The dev instance has been migrated and smoke tested.  The -pq instance in dev has been scaled down.

The test instance has been migrated and smoke tested. The -pq instance in test has been scaled down.

repo: bcgov/openshift-aries-mediator-service


text:
The technical contact should include the identity provider in the ID.

Story
As the platform administrator (auth provider) I would like the technical and product GitHub ID to specify @github as part of the username so that it correlates to what is seen in KeyCloak (SSO).
Description
We'll soon (probably day 1) have OIDC as the authentication mechanism for the OCP 4.x clusters (klab, clab, aro and silver). This means that the KeyCloak back-end will have the user registered as uername@github or username@idir. If we don't start sending this information prior to date one we won't know what provider is being used for a particular user. Also, it may be harder to adapt to offering IDIR in the future.
To make this work we could simply update the Web from having the field GitHub ID to being IDIR or GitHub ID and accepting them in the format user@idir or user@github. The API will also need to change the message sent to NATS from:
   technicalContact: { githubId: 'jleach' } }

to
   technicalContact: { userId: 'jleach', provider: 'github' }

Done When
The user can specify IDIR or GitHub as the ID when registering both the Technical Contact and Product Owner and that information is correctly stored in the database and sent to NATS.

@j-pye FYI. Issue created.

Ref. #96 relates to this.

Reopen this issue as it's still relevant.

Reopen this issue as it's still relevant.

@yhfreeman I thought this was already resolved? Both TC and PO have the IDP ? -- Maybe i'm misunderstanding the issue?

@yhfreeman I thought this was already resolved? Both TC and PO have the IDP ? -- Maybe i'm misunderstanding the issue?

You are correct @j-pye in a way that we do currently have the IDP indicated in the nats (bot) message. I was more examining the ticket against its "definition as done" where it says "...information is correctly stored in the database and sent to NATS.". Currently, the github provider is hard-coded within the Registry api not stored in the DB. Should we create another separate ticket since it seems to have caused confusion already? Thanks. cc @sbathgate

You are correct @j-pye in a way that we do currently have the IDP indicated in the nats (bot) message. I was more examining the ticket against its "definition as done" where it says "...information is correctly stored in the database and sent to NATS.". Currently, the github provider is hard-coded within the Registry api not stored in the DB. Should we create another separate ticket since it seems to have caused confusion already? Thanks. cc @sbathgate

I think it's fine to continue with this ticket @yhfreeman
We may want to change the title or add a note to the body that this only applies to the DB/API components + Labels.

I think it's fine to continue with this ticket @yhfreeman
We may want to change the title or add a note to the body that this only applies to the DB/API components + Labels.

authors: j-pye jleach yhfreeman

repo: bcgov/platform-services-registry


text:
Allow different name and dir for build action

Allow different name and directory for building.  Database options are being added, which could look like:

postgres: database/postgres
postgis: database/postgis

Long since done.

repo: bcgov/quickstart-openshift


text:
ITVR - Investigate change in approved rebate levels

Problem Description
**The rebate program is running short of funds and want to potentially reduce the amount of rebate available to all levels of approved rebate applications.
Solution Needs

The solution must communicate the changed rebate levels to the applicants and provide this new approved rebate level data to NCDA via the API.

Timebox

See points on ticket

Outcome
Details describing the outcome of the research

Dev team to confirm the feasibility (or not) of making this change to approved rebate levels.
Set out the steps required to make this change
Detail any associated risks.

https://app.zenhub.com/files/223241604/4a7f232f-d173-49ad-9357-4b634467f6f3/download
Feasibility: Yes.
Steps required to make this change: Please see attached pdf at the top.
Risks/questions: When an application is "approved" on our end and "not-redeemed" on the NCDA's end, what exactly does that mean? I seem to recall the NCDA saying something about an applicant being "not-redeemed" even when they've bought a car (they have to keep the car for 6 months or something). I'm just a little bit concerned that we will be telling an applicant their rebate level changed when they've already bought a car...
Another question: Just to confirm, in the same release as the one containing the implementation of this proposed change, we are also changing the rebate amounts for all future applicants?
Notes:
(1) It would be prudent for the ncda to set up a test environment so that when testing this (whether locally or otherwise) we don’t have to use their prod environment; it doesn’t have to be anything fancy, just a new List (e.g. TestITVREligibilityList) that we can perform CRUD operations on via the API would be fine…
(2) We can update 100 approved applications per hour to the new rebate amounts (due to supposed NCDA API limitations); so for 5000 approved applications, that's a bit more than 2 days (48 hours).

Another option: easiest thing to do would be to just continue doing things the way they are until the sum of all the max rebate amounts reach a certain number, and then just stop people from making applications from that point forth (or until there's more funds). We can build something so that analysts can see, in the console, the total value of all rebates approved/redeemed; alternatively, this total might be something they can grab directly from the database using CTHUB.

@airinggov I'm not sure; perhaps the NCDA requires that we send them a number? But I think I see your point; if we refactored to store the levels A,B,C instead of the numbers, and this situation comes up again where we need to reduce the amounts of already approved rebates, then we wouldn't need to send updated data to the NCDA - we could just tell them that, for example, A now means 3500, B means 1500, etc.

repo: bcgov/zeva


text:
firewall_update in synapse-tools

This is how it looks if the firewall_update stuff goes in synapse-tools @chriskuehl
for PAASTA-10896
depends on https://github.com/bchess/paasta/pull/3

Closing this  and merging it back into paasta-tools. Watch bchess/paasta#3 instead

repo: bchess/synapse-tools


text:
Extending Core Classes

Coming from CI3 it was easier to edit functionality to the core. I have asked a buddy and have been messing with it myself but we can't seem to edit core classes without some hacky workarounds. According to the documentation it doesn't work as described? Maybe I am blind but this is what I have. I am trying to modify how this appends the code, but I can't get the function to override the original. Am I missing something?
  $classmap = [
          'CodeIgniter\\HTTP\\Message' => APPPATH . '/Libraries/Message.php',
      ];

<?php

//namespace CodeIgniter\HTTP;

class Message extends \CodeIgniter\HTTP\Message {

   public function appendBody($data) {
      $this->body .= (string) $data;

      return 'Does this work?';
   }

}

The Message class is a little bit of a different beast, honestly, since the Request and Response classes directly extend that class. If you're trying to add this method to the Response class, then you'd create a new class that extends CodeIgniter\HTTP\Response, we'll just add it to our application folder directly for now:
<?php namespace App;

class Response extends \CodeIgniter\HTTP\Response
{
    public function appendBody(string $data)
    {
        $this->body .= $data;
        return $this;
    }
}

Then you'd modify the Service the system uses to use the new class instead of the existing one. The best way to do this is to copy the response() method from system/Config/Services.php to application/Config/Services.php and modify it to use the new class:
public static function response(\Config\App $config = null, $getShared = true)
	{
		if ($getShared)
		{
			return self::getSharedInstance('response', $config);
		}

		if (! is_object($config))
		{
			$config = new \Config\App();
		}

		return new \App\Response($config);
	}

And that's done. Now, when the system starts up, it should use your new class in place of the built-in one during all Response interactions throughout your application.
No need to mess with the ClassMap directly in most cases, at least not when you have a namespaced class the autoloader can find.

Oh - and next time, please use the forums to ask questions. This should be for bug reports only.

Ahh, perfect! It works. This makes a lot more sense and is exactly what i needed to keep extending. Thank you!

authors: JakeAi lonnieezell


text:
Installation fails on Python 3.10/Windows

Cool library! Didn't install easily, though, on WIndows 10 and with Python 3.10:
C:\Users\awood\AppData\Local\Temp\1
λ py -3.10 -m venv pytermgui-env

C:\Users\awood\AppData\Local\Temp\1
λ pytermgui-env\scripts\activate

C:\Users\awood\AppData\Local\Temp\1
(pytermgui-env) λ pip install pytermgui==1.0.1
Looking in indexes: https://pypi.org/simple, http://b******
Collecting pytermgui==1.0.1
  Downloading http://btc-asic-dev01/root/pypi/%2Bf/144/5199ce1d54d82/pytermgui-1.0.1.tar.gz (56 kB)
     |████████████████████████████████| 56 kB 325 kB/s
    ERROR: Command errored out with exit status 1:
     command: 'C:\Users\awood\AppData\Local\Temp\1\pytermgui-env\Scripts\python.exe' -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\awood\\AppData\\Local\\Temp\\1\\pip-install-l21qgegv\\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\\setup.py'"'"'; __file__='"'"'C:\\Users\\awood\\AppData\\Local\\Temp\\1\\pip-install-l21qgegv\\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\awood\AppData\Local\Temp\1\pip-pip-egg-info-fv_vf4ds'
         cwd: C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\
    Complete output (17 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\setup.py", line 3, in <module>
        import pytermgui
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\__init__.py", line 98, in <module>
        from .parser import *
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\parser.py", line 76, in <module>
        from .ansi_interface import foreground
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\ansi_interface.py", line 285, in <module>
        terminal = _Terminal()
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\ansi_interface.py", line 221, in __init__
        self.size: tuple[int, int] = self._get_size()
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\ansi_interface.py", line 239, in _get_size
        return tuple(val - org for val, org in zip(screen_size(), self.origin))  # type: ignore
      File "C:\Users\awood\AppData\Local\Temp\1\pip-install-l21qgegv\pytermgui_0883789d0f7b4af58fb5d9b512057f2b\pytermgui\ansi_interface.py", line 202, in screen_size
        width, height = get_terminal_size()
    OSError: [WinError 6] The handle is invalid
    ----------------------------------------

Cloning the repo, patching pytermgui.ansi_interface.screen_size to return 0, 0 for errorno in (9, 25) instead of just 25 allowed me to install it, and then seemed to work fine! I'm no terminal expert, but I guess there's no interactive terminal available to pip's install targets.

That's one very odd issue! I assume its something to do with terminal size functionality not quite working on Windows, so I will look into it later! Thank you.

@alexlawriewood
So the commit automatically closed this issue, but as a sanity check could you test if it actually did?
Thanks for your help!

Yup, installs properly now! And MarkApp seems to work, as a basic test.

That's great to hear! I wonder if there is any way to replace SIGWINCH, as it allows for some neat features.

authors: alexlawriewood bczsalba

repo: bczsalba/pytermgui

license: MIT


text:
Carrousel - homepage

Description
On the homepage, put in place an carrousel in order to put forward some articles
Actions

[x] Define template homepage base on settings activation
[x] Images from articles put forward is based on tags (with a limit from settings)

https://github.com/bdronneau/grav-theme-bootflat/commit/a11c04ff1b475488fe1a41e74d030740aba130ab

repo: bdronneau/grav-theme-bootflat


text:
Fix Navbar Responsiveness for Mobile and Tablet Devices

Description
The current navbar does not display properly on smaller screens (mobile and tablet). Items in the navbar either overlap or shrink in size, making them hard to read and navigate.
To resolve this issue:
Implement media queries in the CSS to adjust the layout of the navbar on different screen sizes.
Add a hamburger menu for smaller screens to make navigation more user-friendly.
Ensure the text size and padding are adjusted appropriately for different screen sizes, maintaining readability and design consistency.
Screenshots
No response
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[ ] I'm a Hacktoberfest'24 contributor
[ ] I am willing to work on this issue (optional)

i want to fixed this bugs


text:
Create editable copy from specific version creates copy of latest version

Operation System: Mac OSX
Beaker version: v0.8.0-prerelease.7
Create a new website, then edit index.html several times, changing text that indicates the version number of the archive, for example:

Hello world! ver 8
Then open a previous version - you should see the version number in the URL
ex: dat://hex...+7/index.html
Make an editable copy.  The copy is built from the latest version of the site, not the version you were browsing.
Use case: branching from a previous version as you experiment with a site change

Yes thanks for reporting, added to the TODOs.

authors: erangell pfrazee

repo: beakerbrowser/beaker


text:
allow user to create drives and folders in saveFileDialog GUI

If my app calls beaker.shell.saveFileDialog to prompt the user to save a new file, and they decide that they'd like to store that file in a new drive, or even a new subfolder of an existing drive, there's no way for them to do so, except to open up My Library in a new tab, create things there, then switch back to the tab where the saveFileDialog window is still sitting open. This works, but it's awkward compared to a native file picker. (And in fact, it DOESN'T even work for drives, though I'll create a separate issue for that...)

Will be in the next release!

authors: omgitsraven pfrazee


text:
"add options for bulk deleting history"

This adds the ability to bulk delete history items from today, this week, this month, or from all time.

Looking great! I'll need to take a look at visit_fts in a second, and see how I think we should handle the new deletion model.
After https://github.com/beakerbrowser/beaker/pull/124/files#diff-222fd164f533a76625e85b25af6a3dbaR143 do we need to fetch entries, to make sure the screen isn't (incorrectly) empty? Eg, if the history screen was showing exactly all of one day's history, the user clears last 24 hrs, and then it'd be empty: when really it should show the entries from >24hrs.

👍  Merged. Nice work!

authors: pfrazee taravancil


text:
🛑 Archive Server (Hydrus network api) is down

In 2c498e1, Archive Server (Hydrus network api) ($MAOW_VERY_SECRET_SITE_1) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Archive Server (Hydrus network api) is back up in 08a098c.


text:
Download link for bsh.jar in readme.md does not work

Hi, thanks for your useful tool.
I just found that the download link for bsh.jar in the readme.md doesn't work.
https://bintray.com/artifact/download/beanshell/Beanshell/org/apache-extras/beanshell/bsh/2.0b6/bsh-2.0b6.jar
Maybe you can replace it with a correct one.

duplicate #744

authors: TianYuanSX nickl-

repo: beanshell/beanshell


text:
Update version to 2.2.0-SNAPSHOT per #537

I really do think this is better, as it makes it clear that this version is newer vs. beanshell2 @ 2.1.9.

We were actually contemplating whether to go BeanShell3 or if we should rather go BeanShell8 where was that post...

Issue #81 so I think we should rather go that route.

Thanks but we're not ready for version bump yet
Closed: Not Ready

authors: drosenbauer nickl-


text:
Update sbt-ci-release to 1.5.9

Updates com.geirsson:sbt-ci-release from 1.5.7 to 1.5.9.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.geirsson", artifactId = "sbt-ci-release" } ]

labels: sbt-plugin-update, semver-patch

Superseded by #240.

repo: beautiful-scala/scalastyle


text:
impl packets 101-150 for v662

flowstate

No malware detected, its legit! LGTM

Also tbh Im proud of how well you are using the ProtoCodec macro, I was scared that I might have been overengineering it XD

authors: OmniacDev theaddonn

repo: bedrock-crustaceans/bedrockrs


text:
refactor!: es modules and commonjs build

BREAKING CHANGE: changed file structure

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

repo: beecode-rs/msh-error


text:
Typo in LAYOUT documentation regarding fixed footer

Fixing a copy / past typo with the footer ;)

👍 thanks!

authors: guidouil leonardorafael

repo: beercss/beercss


text:
Tutorial Documentation Correction

Describe the bug
https://docs.beeware.org/en/latest/tutorial/tutorial-4.html
Sub-title: Updating dependencies and icons
In the documentation (point 1) says ... 'will re-install your the application dependecies.'
To Reproduce
Steps to reproduce the behavior:

Go to https://docs.beeware.org/en/latest/tutorial/tutorial-4.html
Find sub-title 'Updating dependencies and icons
Find first point.
See bad english which says 'will re-install your the application dependecies.'

Expected behavior
Should say ... 'will re-install the application dependecies.'
Screenshots

Environment:
n/a
Additional context
n/a

Fixed, issue can be closed.

authors: Spider-ant Viridescence

repo: beeware/beeware


text:
Stalling on installing Hackage...

I can't seem to update the package index in Hackage when using Amazon... it just hangs. If I go to the mirrored link, it just says access denied.
I manually installed Hackage using a different mirror, from stack, but the install script from vim-now isn't finishing, because of the hang, so I don't know how to move on?

How did you end up resolving the issue?

It just worked in the end actually, after retrying a couple of times :) But I can't get hoogle, or ghc-mod or anything else to work really, so I'm trying a complete reinstall.

authors: begriffs peterstorm

repo: begriffs/haskell-vim-now


text:
any way to convert a request to a table to a map (feature request?)

(new to postgrest - it is amazing!) A normal GET request on a table comes back as an array. Is there some way to "map" this to a Object literal on the postgrest server using the primary key as the default and perhaps overriding by passing a key to use? I am finding I need to always convert these to maps in my client code. (I am using ImmutableJS in a React/Redux app, and this is causing unnecessary re-renders.)

Try sending the request header Prefer: plurality=singular as described in http://postgrest.com/api/reading/#singular-vs-plural

That returns a single object:
$ curl -v -X GET -H "Prefer: plurality=singular" -H "Range-Unit: regions" -H "Range: 0-4" 127.0.0.1:3000/regions
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 3000 (#0)
> GET /regions HTTP/1.1
> Host: 127.0.0.1:3000
> User-Agent: curl/7.43.0
> Accept: */*
> Prefer: plurality=singular
> Range-Unit: regions
> Range: 0-4
>
< HTTP/1.1 200 OK
< Transfer-Encoding: chunked
< Date: Wed, 08 Jun 2016 02:12:54 GMT
< Server: postgrest/0.3.1.1
< Content-Type: application/json; charset=utf-8
<
* Connection #0 to host 127.0.0.1 left intact
{"id":"14b2581f-bb02-4361-a5f9-533b063907c6","parent_id":null,"name":"Hungary","level":0}

Without the "Prefer: plurality=singular" I would get:
[
  {
    "id": "14b2581f-bb02-4361-a5f9-533b063907c6",
    "parent_id": null,
    "name": "Hungary",
    "level": 0
  },
  {
    "id": "184d7902-7921-4e0e-bb75-a2e4b65eb657",
    "parent_id": null,
    "name": "Germany",
    "level": 0
  },
  {
    "id": "60f036dc-a383-4c16-a4aa-d82bbdd961a6",
    "parent_id": null,
    "name": "Australia",
    "level": 0
  },
  {
    "id": "41785963-df97-4ce1-8449-80871f812e0e",
    "parent_id": null,
    "name": "Spain",
    "level": 0
  },
  {
    "id": "368dd4f0-5bd9-40ec-a3df-751e50383a2b",
    "parent_id": null,
    "name": "France",
    "level": 0
  }
]

I am hoping to get:
{
  "14b2581f-bb02-4361-a5f9-533b063907c6":{
    "id": "14b2581f-bb02-4361-a5f9-533b063907c6",
    "parent_id": null,
    "name": "Hungary",
    "level": 0
  },
  "184d7902-7921-4e0e-bb75-a2e4b65eb657": {
    "id": "184d7902-7921-4e0e-bb75-a2e4b65eb657",
    "parent_id": null,
    "name": "Germany",
    "level": 0
  },
  "60f036dc-a383-4c16-a4aa-d82bbdd961a6": {
    "id": "60f036dc-a383-4c16-a4aa-d82bbdd961a6",
    "parent_id": null,
    "name": "Australia",
    "level": 0
  },
  "41785963-df97-4ce1-8449-80871f812e0e": {
    "id": "41785963-df97-4ce1-8449-80871f812e0e",
    "parent_id": null,
    "name": "Spain",
    "level": 0
  },
  "368dd4f0-5bd9-40ec-a3df-751e50383a2b": {
    "id": "368dd4f0-5bd9-40ec-a3df-751e50383a2b",
    "parent_id": null,
    "name": "France",
    "level": 0
  }
}

/opinion: That looks like data duplication to me and seems like it should be a client-side transformation.
That being said, I'm also interested in how one could best handle such transformations in Postgrest—or whether Postgrest should explicitly not handle such transformations as they aren't considered restful?

@rkoberg @ludwigschubert
Short answer, you can't and i don't think it will ever be possible because you can request rows and not include the primary key and then you can't generate the json object. This transformation should be done by the client if needed
Long answer
Each postgrest request returns rows, the datastructure to represent that is arrays/lists
You are probably using a map/object because somewhere in your code you want to have random access, but if you don't have something like mapstore.getById('id here') then you don't need the map structure, the view should just map over the list and render the output.
as for view refresh, i don't understand why you would have reloads when doing the transformation, that should be done when you get the data back from postgrest, i.e
instead of
.then(response => fromJS(response.json()))

you should have
.then(response => fromJS(transform(response.json())))

OK, thanks for the explanations. I have been using some NoSQL DBs (e.g. Firebase, RethinkDB), and the data was stored and returned that way. I guess I was looking for a convenience feature in postgREST.
(I am using: Immutable.Map(myList.map(v => [v['id'], v]))). So I do do the transform on the client. I saw this causing a ReactJS rerender when the data came in again, but had not changed. I probably need to use ImmutableJS in some different way so React does not see the data as changed.)

Even if the data would come from postgrest as you described, the refresh would still happen because
fromJs({a:1}) !== fromJs({a:1}) the same way as { foo: "bar" } !== { foo: "bar" }

If don't need random access, i.e. each time you just go over each item and render it then don't use the Map, use List. List is faster when each time you go over each element in sequence.

(if this answers your questions please close the issue)

I need random access (finding region ancestors in my example response above where there can be several thousands of regions). Immutable.is ( https://facebook.github.io/immutable-js/docs/#/is ) used in a pure render should be seeing no changes, so need to figure that out. Anyway, closing since it is all off topic.

authors: begriffs ludwigschubert rkoberg ruslantalpa

repo: begriffs/postgrest


text:
Cant install EXTERNAL and DATA

Describe your problem here.
I was trying to install the novaflare but when i do it, it says "A error as occured during the installation.". What's wrong?
Are you modding a build from source or with Lua?
I am not modding
Have you open preload state?
Yes
What is your build target?
Android
Did you edit anything in this build? If so, mention or summarize your changes.
No response

android system problem?

When i tried to open the novaflora after installed it, it just closes
himself.
Em sáb, 20 de jul de 2024 09:12, 北狐丶逐梦 @.***> escreveu:

android system problem?
—
Reply to this email directly, view it on GitHub
https://github.com/beihu235/FNF-NovaFlare-Engine/issues/45#issuecomment-2241107192,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJ7QZKEXRM2EDOPKVRGXWZLZNJH35AVCNFSM6AAAAABLFR3NDWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBRGEYDOMJZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

Sorry for the late response
Em qua, 24 de jul de 2024 22:15, acesso meninos novais <
@.***> escreveu:

When i tried to open the novaflora after installed it, it just closes
himself.
Em sáb, 20 de jul de 2024 09:12, 北狐丶逐梦 @.***>
escreveu:

android system problem?
—
Reply to this email directly, view it on GitHub
https://github.com/beihu235/FNF-NovaFlare-Engine/issues/45#issuecomment-2241107192,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJ7QZKEXRM2EDOPKVRGXWZLZNJH35AVCNFSM6AAAAABLFR3NDWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBRGEYDOMJZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

Great!
Em seg, 26 de ago de 2024 16:50, 北狐丶逐梦 @.***> escreveu:

Closed #45 https://github.com/beihu235/FNF-NovaFlare-Engine/issues/45
as completed.
—
Reply to this email directly, view it on GitHub
https://github.com/beihu235/FNF-NovaFlare-Engine/issues/45#event-14018248808,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJ7QZKGIG4LD7DQZJHNDIB3ZTOBIFAVCNFSM6AAAAABLFR3NDWVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJUGAYTQMRUHA4DAOA
.
You are receiving this because you authored the thread.Message ID:
@.***
com>


text:
Changed to compressed numpy array for storing features

This PR writes a custom .store() and .load() method for ImageFeatures.
It reduces storage from 271k to 24k for the example below with 10 feature vectors from efficientnet_b0_ver1. Storage time to local changed from 0.01 to 0.003 seconds.
Further, this changes to using np.half inside the PointFeatures class so training on these features should be faster also. https://github.com/qiminchen/CoralNet/issues/13
Question: I could settle for np.float (32 bit precision) at twice the storage cost. I'm not sure which is better.
To test
To test run e.g. the code below on master and on this branch and check the file-size on disk.
from spacer.messages import ExtractFeaturesMsg
from spacer.tasks import extract_features
msg = ExtractFeaturesMsg(
        job_token='asdas',
        feature_extractor_name='efficientnet_b0_ver1',
        rowcols=[(i, i) for i in range(10)],
        image_loc=DataLocation(
            storage_type='s3',
            bucket_name='spacer-test',
            key='08bfc10v7t.png'),
        feature_loc=DataLocation(
            storage_type='filesystem',
            key='tmp.feats'
        )
    )
_ = extract_features(msg)

NOTE: an earlier assessment of this used a synthetic ImageFeatures struct. For that I got a full 3 orders of magnitude storage improvement. With real data, it's "only" 1 order of magnitude.

@StephenChan @qiminchen : thoughts on this PR? Preference for using float16 or float32? @qiminchen : did you get a chance to try re-training the classifiers using this setting?

@StephenChan @qiminchen : thoughts on this PR? Preference for using float16 or float32? @qiminchen : did you get a chance to try re-training the classifiers using this setting?

changes look great, hmm I would vote for float32 even tho float16 does save memory and we don't see performance dropping, it has less precision and we don't want some "potential" precision issue in the future, also most of the models use float32 as default dtype.
I have a few meetings this week and presentations, so I will work on it today or tmr.

@beijbom @StephenChan here are some comparisons between this branch and the master on training the classifier.
NOTE: comparison shown as <master | this PR>

Source
Accuracy (%)
per Feature size
Training time (s)

s1498
78.4 | 79.0
~828kB | ~71kB
33.14 | 5.91

thoughts on this PR? Preference for using float16 or float32?

Changes look good to me, and I got the same size results on the test code in the first post: tmp.feats was 271k with master, 24k with this PR's branch.
I think Qimin's reasoning on using float32 makes sense. And the extra x2 savings on storage doesn't seem like a big deal for CoralNet's traditional usage, at least. If I understand correctly, we're talking 240 KB savings for a 100-point image, when the image file itself can be 5-10 MB. If we have a dense point cloud though, then that could be another story.

@beijbom @StephenChan here are some comparisons between this branch and the master on training the classifier. The per Feature size would be doubled if using float32. The PR looks great, we can save a lot of storage and training time.
NOTE: comparison shown as <master | this PR>

Source
Accuracy (%)
per Feature size
Training time (s)

s1498
78.4 | 79.0
~828kB | ~71kB
33.14 | 5.91

s294
86.3 | 85.8
~5.5MB | ~470kB
168.61 | 15.79

s1396
89.6  | 89.9
~277kB  | ~24.5kB
24.6  | 8.7

Thanks guys. I changed to float32, merged this and released 0.3.0 package. Also pushed a requirement bump to https://github.com/beijbom/coralnet/pull/323.

authors: StephenChan beijbom qiminchen

repo: beijbom/pyspacer


text:
preserve lights status

change-type: patch

lgtm

repo: belodetek/pet-a-manger


text:
BEMTREE и данные

Вот в этой ветке https://ru.bem.info/forum/-439/  @tadatuta сказал:

Кроме того, BEMTREE асинхронный, что позволяет во время выполнения шаблона сходить за данными

Сходить куда? Например в базу данных или к HTTP API?
Можно ли где-нибудь почитать код, примеры как это лучше применять на практике?

Сходить куда? Например в базу данных или к HTTP API?

На самом деле куда угодно: в БД, по HTTP, на файловую систему или агрегировать данные из нескольких источников. Идея в том, что блоки могут сами ходить за своими данными.
Но важно понимать, что это не обязательное требование, а лишь потенциальная возможность. При желании можно готовить данные с помощью любого бекенда, а в BEMTREE только превращать их в BEMJSON.

Можно ли где-нибудь почитать код, примеры как это лучше применять на практике?

@apsavin сделал целый фреймворк на основе этой возможности.
А моя практика показала, что все-таки удобнее, когда шаблоны максимально простые, а логика получения данных написана отдельно. Но тут на вкус и цвет...

Есть статья про это дело. Кажется, ее до сих пор можно использовать как вводную и все будет работать.
Мне можно задавать вопросы про подход или про код bnsf.

@apsavin, кстати, не хочешь перенести bnsf в bem-incubator ?

@vithar Зачем?

@apsavin Ну мне бы хотелось лучшие решения комьюнити собрать в одном месте.

Инкубатор звучит как что-то, предназначенное для экспериментов и проб. "Поместим вот это в bem-incubator и попробуем вырастить, если получится - переместим в bem" - вот как-то так я это воспринимаю. Я скорее создам отдельную организацию для bnsf, в которую смогут переехать так же генератор проектов, project-stub и реализации различных плагинов, которые не хочется включать в основной репозиторий - например, подключенный и настроенный winston в качестве основного логгера.
Вообще, организация на гитхабе как способ объединения проектов сообщества мне не кажется хорошей идеей. Почему бы просто не вести список вроде такого? Oh, wait, вот же)

äÁ, ÅÓÔØ ÓÍÙÓÌ × Ô×ÏÉ ÓÌÏ×ÁÈ, ÂÕÄÕ ÄÕÍÁÔØ.šóÐÉÓÏË ÅÓÔØ ÔÁËÏÊhttps://github.com/sturobson/BEM-resources/blob/master/README.mdš

Да, есть смысл в твои словах, буду думать.
Список есть такой
https://github.com/sturobson/BEM-resources/blob/master/README.md

Почему бы не сделать кейворд bem или b_ или bem-library, bem-something и по ним искать в npm/bower ?

@zxqfox +1

authors: apsavin isuvorov tadatuta vithar voischev zxqfox

repo: bem/bem-forum-content-ru


text:
Experimenting with Wasmer and AssemblyScript for AWS Function like

Here's the runtime but I also tested with AssemblyScript(TS-Like) and Python
https://github.com/wasmerio/wasmer-go
The only thing we need to do is embedding pocketbase api right here and it's callable in wasm

Here an example in go
https://github.com/wasmerio/wasmer-go/blob/master/examples/example_imports_function_test.go
Still need more research

Stale

authors: Xander-Br benallfree

repo: benallfree/pockethost


text:
New version bug: doesn't re-authenticate user when you close and re-open app

Describe the bug
The current user doesn't get authenticated when you close the tab or visit another url and then open dogehouse again. It takes you back to the login page even when there's a token in localstorage.
To Reproduce
Steps to reproduce the behavior:

Go to 'next.dogehouse.tv'
Login
Close the tab or visit another url
Open dogehouse again

Expected behavior
User should be re-authenticated as long as there's a valid token in localstorage.
Screenshots
If applicable, add screenshots to help explain your problem.
What device are you on?
Additional context
Add any other context about the problem here.

fixed

authors: Mayowa-Ojo benawad

repo: benawad/dogehouse


text:
Bump min s2geography version to 0.2.0

@jorisvandenbossche do you see any good reason to maintain compatibility with s2geography <0.2.0?
If not, I can remove the special cases (#if / #endif pre-processor blocks) for s2geography < 0.2.0 and I can move forward here with some refactoring of core functionality (e.g., clone s2geography objects) that would otherwise be cumbersome to make if we want to maintain compatibility with older s2geography versions.

Given spherely does not have any release compatible with 0.1.0 I don't see a reason to promise any backwards compatibility at this point.

Yes I agree. I also think it will be unlikely to have s2geography as a common dependency of multiple downstream packages in the same environment so maintaining backwards compatibility probably won't be very useful anyway except for development iterations, keeping CI running, etc. between the releases.

Yep, fully agreed just bumping the minimum version, and cleaning up the code.
Maybe you can just keep the machinery in cmakelists.txt to provide the version to be able to have those #if / #endif pre-processor blocks (we might use those in the near future again for temporary using things from s2geography 0.3dev until we do a new release)

You can also remove some skips in the tests, eg
https://github.com/benbovy/spherely/blob/d40a8d25fe6d18bd65d713cf9d5c658668c1a728/tests/test_io.py#L10-L13

This PR is ready for review. I'll implement new spherely features on top of s2geography 0.2.0 in follow-up PRs.

authors: benbovy jorisvandenbossche martinfleis

repo: benbovy/spherely


text:
Removed whitespaces to fix issue:21

Hi there
I just removed the unneeded spaces in your example. Fix for: https://github.com/bendikwa/esphome-igrill/issues/21
Cheers, Lukas

Hi!
Thank you for contributing! (sorry for the late response.)
-Bendik

authors: LukasQ bendikwa

repo: bendikwa/esphome-igrill


text:
Cannot install package, failing at "mkdirp build && browserify -r ./:biojs-xpression -o build/xpression.js'"

I currently  have issues to install the npm package in my project. I'm using nvm as my npm version tool and try to install biojs-xpression via  npm  v2.11.3 (node v0.12.7) on an Ubuntu 14.04 machine.
Is there an issue with the latest stable package release or has this something to do with my setup?
$ npm install biojs-xpression
\
> biojs-xpression@0.1.9 install /<MY PROJECT DIRECTORY>/biojs-xpression
> npm run build

> biojs-xpression@0.1.9 build /<MY PROJECT DIRECTORY>t/node_modules/biojs-xpression
> mkdirp build && browserify -r ./:biojs-xpression -o build/xpression.js

sh: 1: mkdirp: not found

npm ERR! Linux 3.13.0-74-generic
npm ERR! argv "/home/jj/nvm/versions/node/v0.12.7/bin/node" "/home/jj/nvm/versions/node/v0.12.7/bin/npm" "run" "build"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! biojs-xpression@0.1.9 build: `mkdirp build && browserify -r ./:biojs-xpression -o build/xpression.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the biojs-xpression@0.1.9 build script 'mkdirp build && browserify -r ./:biojs-xpression -o build/xpression.js'.
npm ERR! This is most likely a problem with the biojs-xpression package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     mkdirp build && browserify -r ./:biojs-xpression -o build/xpression.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls biojs-xpression
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /<MY PROJECT DIRECTORY>/node_modules/biojs-xpression/npm-debug.log
npm ERR! Linux 3.13.0-74-generic
npm ERR! argv "/home/jj/nvm/versions/node/v0.12.7/bin/node" "/home/jj/nvm/versions/node/v0.12.7/bin/npm" "install" "biojs-xpression"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! code ELIFECYCLE

npm ERR! biojs-xpression@0.1.9 install: `npm run build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the biojs-xpression@0.1.9 install script 'npm run build'.
npm ERR! This is most likely a problem with the biojs-xpression package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm run build
npm ERR! You can get their info via:
npm ERR!     npm owner ls biojs-xpression
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /<MY PROJECT DIRECTORY>/npm-debug.log

Hi Jessica,
you seem to not have dev(elopment) dependecies installed. Does it work if you try installing after globally installing the dev dependencies (mkdirp, browserify, etc.)?
Kind regards,
Benedikt


text:
safeHtml strips allowfullscreen attribute

First, awesome plugin!
Second, I'm not sure if this is intentional or not, but safeHtml seems to be stripping some useful attributes that might be included in the original json response.
For example, if you add a YouTube video, the returned json has...
html: "html": "\u003ciframe width=\"459\" height=\"344\" src=\"https:\/\/www.youtube.com\/embed\/iwGFalTRHDA?feature=oembed\" frameborder=\"0\" allowfullscreen\u003e\u003c\/iframe\u003e"
But, when you use safeHtml|raw to output, the allowfullscreen is gone...
<iframe width='1280' height='720' src='https://www.youtube.com/embed/AXaiBz7QOpY?feature=oembed' frameborder='0'></iframe>
I'm assuming it gets stripped out because it doesn't have an ="..."?
At the end of the day, for my use-case, its not a deal-breaker. But, figured it was worth mentioning.

The HTML purifier removes it. If you're okay with the slight security risk, you can use the html attribute which doesn't purify the embed data. I'll look into adding the fullscreen attribute as an exception.

repo: benjamminf/craft-embedded-assets


text:
Ignore directives for imports-first

We currently use a custom directive at the top of most JavaScript files. imports-first requires that any imports come before this line, but doing so means that it is no longer treated as a directive. I'm wondering if it would be possible to add an option to imports-first to ignore directives (which should be pretty easy to detect, even though I don't think ESLint exposes them as such). Basically, I would love something that lets the following pass:
'expose Foo'

import MyThing from './somewhere'
// ...

but continue to fail anything that is not a directive appearing first:
doSomething();

import MyThing from './somewhere'
// ...

I'm happy to take a stab at this if it's something you are interested in. Thanks!

Ah, makes sense. Hadn't thought about that before considering modules imply strict mode.
A PR allowing directives (which I guess is defined as an ExpressionStatement containing a string Literal) would be welcome. 😄

Cool, I can definitely do that. Do you want this as an option or as the default behaviour? Any preference for an option name if you want it as an option?

I think it makes sense to always allow directives, until someone says otherwise.
I'm struggling to imagine why you'd want to report pragmas/directives, and if that day comes it's easy to add an option.

authors: benmosher lemonmade

repo: benmosher/eslint-plugin-import


text:
Add Front Indicator Option

Add an option to show an arrow or other stylization to help show what direction is the 'front' of the play space.

Could you either do this or allow non-rotating petals? Thanks!

I currently use TurnSignal mainly to figure out where the 'front' is, by setting twist rate almost to maximum, orienting in real life and then resetting the orientation in TurnSignal. Unfortunately it seems to get out-of-sync after a while for some reason. It would be amazing to have a reliable 'front' indicator (or a fixed rotation for my room that I don't have to keep resetting)!

authors: benotter explogeek martinvonwittich

repo: benotter/TurnSignal


text:
Release after 0.4.18

On second thought, might as well compile changes into one PR
TODO after next release, before merge:

[ ] Fix version # in src/pages/en/services/homebridge.md
[ ] Fix version # in src/pages/en/services/autobrr.md
[ ] Fix version # in src/pages/en/services/truenas.md
[ ] Fix version # in src/pages/en/services/tubearchivist.md
[ ] Fix version # in src/pages/en/services/watchtower.md
[ ] Fix version # in src/pages/en/widgets/openmeteo.md
[ ] Fix version # in src/pages/en/services/navidrome.md
[ ] Fix version # in src/pages/en/services/pyload.md
[ ] Fix version # in src/pages/en/services/gluetun.md

Added update for logpath setting.

authors: JazzFisch shamoon

repo: benphelps/homepage-docs


text:
Move about page descriptions into DB

To be called through API, too clunky to use in react component

Related to #89

Decided that we will move this info into JSON to be imported into the react component, as it's probably not justified content for the DB.

repo: benrandall/idb


text:
Add more control to bitrate and encoding methods

Adds support for VBR, CBR, CRF as well as 2 pass encoding and more control of the h265 codec.

Nice, thanks!
Merging

authors: bentasker mrworf

repo: bentasker/HLS-Stream-Creator


text:
Incorrect behavior of widening/narrowing svcvt instructions

Hello!
I noticed a discrepancy in the behavior of svcvt functions in farm-sve, compared to the ARM spec.
For example, svcvt_f64[_f32]_z:

Return a vector in which each active element i contains (float64_t)op[i * 2]. Set the inactive elements of the result to zero.

However, in farm-sve, it returns (float64_t)op[i] (for the first half of the vector):
inline svfloat64_t svcvt_f64_f32_z(svbool_t pg, svfloat32_t op) {
  svfloat64_t res;
  for (int idx = 0; idx < core_min(res.Size, op.Size); ++idx) {
    if (pg.vec[idx]) {
      res.vec[idx] = op.vec[idx];
    }
  }
  return res;
}

Same applies for other widening conversions.
Narrowing conversions, on the other hand, should "Convert each active element op[i] to {new type}, rounding according to the current rounding mode. Return the converted value in element i * {stride} of the result vector and return zero in {other elements}". But in farm-sve, they fill the first half/quarter contiguously instead.
I can submit a manual fix later, but since "the implementation was generated semi-automatically", perhaps it would be easier to fix the generator?

Hello. Thanks for the feedback. The generator was dumb scripts that are not easy to make accurate. So I think one should do it by hand. If you can do it that would be great, otherwise, I will try to do it next month. Thanks.

If you can do it that would be great, otherwise, I will try to do it next month. Thanks.

I hope to find time this week for this and #6, then. Is there any automated testing suite to run, or is it enough to manually check a few cases?

repo: berenger-eu/farm-sve


text:
Explore ways to reduce footprint of source texts

Is there a way that we can reduce the footprint of text files so that we can be sure they don't weight down the gem and impact performance as we add more source texts?
Is changing the way that texts are stored even necessary?
Adding this issue to explore ways that we might improve performance by storing texts in a better way.

I am working on a change related to this. I've crafted a way to reduce the amount of time it takes to generate sentences by about 25% reliably.  Each run below was a benchmark running 50_000 times:
~~~~ RUN 0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MASTER
 19.202546   1.194844  20.397390 ( 20.410324)

TESTER
 14.295431   1.177337  15.472768 ( 15.482257)

~~~~ RUN 1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MASTER
 19.107342   1.193908  20.301250 ( 20.312013)

TESTER
 14.310251   1.172201  15.482452 ( 15.490589)

~~~~ RUN 2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MASTER
 19.766922   1.333435  21.100357 ( 21.181967)

TESTER
 15.375284   1.472117  16.847401 ( 16.997295)


text:
🛑 NC.NGN is down

In 661c67e, NC.NGN (https://nc.nogood.name) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NC.NGN is back up in a9e32f6 after 16 minutes.

repo: berhei/monitor


text:
also provide Apache as an http-proxy

i'm throwing berkshelf on a shared-web server that has apache doing vhost-based routing, so this works better for me than running nginx on a different port and supporting two systems doing the same thing

@kplimack thanks for the PR! I would recommend wrapping the Berkshelf-API cookbook with your own that includes the http proxy recipe of your liking. I don't want to support multiple proxy types in the core cookbook.

authors: kplimack reset

repo: berkshelf/berkshelf-api


text:
Image export of scene possible?

Hi,
is it possible to export the current scene of the OCP CAD Viewer as an image file? I'm really struggling here and I appreciate any help.

The next version (2.4) will have a Python command save_screenshot(filename).
It will save a screenshot from the current view relative to the current working folder.
For example, for this object:

save_screenshot("./assets/img.png") will create:

It will not show the CAD tools nor the orientation indicator (

This is exactly what I've been looking for! Thanks for the update, and I'm looking forward to using it soon.

Added in 2.4.0


text:
[1.19.2] Index out of bounds exception

Hi,
I see a bunch of these error in my logs. I'm not sure if they cause an issue or not, but I thought it would be good to report them;
java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 0
	at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
	at java.base/java.util.Objects.checkIndex(Objects.java:359)
	at java.base/java.util.ArrayList$SubList.get(ArrayList.java:1149)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.parseSymbols(MathBuilder.java:306)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.parseSymbols(MathBuilder.java:282)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.createFunction(MathBuilder.java:439)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.parseSymbols(MathBuilder.java:266)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.parseSymbols(MathBuilder.java:308)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.shadowed.eliotlash.mclib.math.MathBuilder.parseSymbols(MathBuilder.java:283)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.core.molang.MolangParser.parseSymbolsMolang(MolangParser.java:228)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.core.molang.MolangParser.parseOneLine(MolangParser.java:216)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.core.molang.MolangParser.parseExpression(MolangParser.java:174)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.core.molang.MolangParser.parseJson(MolangParser.java:154)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.util.json.JsonKeyFrameUtils.parseExpression(JsonKeyFrameUtils.java:177)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.util.json.JsonKeyFrameUtils.convertJson(JsonKeyFrameUtils.java:55)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.util.json.JsonKeyFrameUtils.convertJsonToRotationKeyFrames(JsonKeyFrameUtils.java:171)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.util.json.JsonAnimationUtils.deserializeJsonToAnimation(JsonAnimationUtils.java:267)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.file.AnimationFileLoader.loadAllAnimations(AnimationFileLoader.java:30)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.resource.GeckoLibCache.lambda$reload$0(GeckoLibCache.java:72)
	at TRANSFORMER/geckolib3@3.1.39/software.bernie.geckolib3.resource.GeckoLibCache.lambda$loadResources$5(GeckoLibCache.java:90)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Non-issue, safe to ignore

authors: AzureDoom enimog

repo: bernie-g/geckolib


text:
should not expose postgresql in u4a by default

expose postgresql when deploy bc-explorer
By default,we do not expose postgresql in prod environment.

Fixed by https://github.com/bestchains/installer/pull/63

repo: bestchains/installer


text:
élève qui n'apparaît pas

Dans le 0261397C (LPO LYCEE DES METIERS HENRI LAUREN) un élève n'apparaît pas.
Entre le 4 et le 8 sept il était dans un autre établissement.
Il apparaît bien dans la base Aplypro dans l'établissement 0261397C .
Je vous transmets les info élève par mail

C'est bon, résolu avec https://github.com/betagouv/aplypro/issues/204.

Il apparaît bien dans la base Aplypro dans l'établissement 0261397C .

c'est à dire ?

je le trouve bien dans la base de données dans la table students.

authors: DiffusionAplyPro freesteph

repo: betagouv/aplypro


text:
:alien: Ajoute inexistant traduction dans le formulaire des newsletter

Ajoute inexistant traduction dans le formulaire des newsletter.
Actuellement, https://mycompanyinfrance.fr/ affiche le contenue suivant dans le champ d'email:

Quand ça devrait être:

Merci pour la contribution ! Désolé de ne pas avoir mergé directement :confused:

authors: johangirod marcelovicentegc

repo: betagouv/mon-entreprise


text:
C#4.0 SUpport

Hello,
it would be great if the library will be supported in C# 4.0.
I changed lines like this one:
var labels = SecondaryAxis.Labels?.ToArray();
in that one:
var labels = SecondaryAxis.Labels != null ? SecondaryAxis.Labels.ToArray() : null;
and then it will compile and work unter C# 4.0
These are not much changes but a few.
Try to compile it with Visual C# 2010 Express for example and yu'll see it.
Regards

Dll file is compiled for .net 4.0, 4.5, 4.5.1, 4.5.2 and 4.6 from this question http://stackoverflow.com/questions/247621/what-are-the-correct-version-numbers-for-c it should be enough to support c# 4. the problem is that I wrote those examples in c# 6, but if you install instead of clonining in visual studio 2010, install the nuget package you should not have any problem. Try it and let me now please. As far as i know everything should work fine if you use at least .net 4.0

Hello,
Visual C# 2010 Express doesn't support the packages.
I'll do the few changes in the source and that's ok for me.
It was only a suggestion that your library source could be used by more people.
Regards

are you using .net 4?

Yes because of the compatibility to Windows XP.

but you are you using .net 4 in your project? Go to SoluctionExplorer -> Properties -> Application -> then target framework should be at least 4. I think default in visual studio 2010 is 3.5

Yes it's set to 4.
But if you don't want to do the few changes it's ok for me. No problem.
Am 7. Oktober 2015 15:58:40 MESZ, schrieb Alberto Rodriguez notifications@github.com:

but you are you using .net 4 in your project? Go to SoluctionExplorer
-> Properties -> Application -> then target framework should be at
least 4. I think default in visual studio 2010 is 3.5

Reply to this email directly or view it on GitHub:
https://github.com/beto-rodriguez/Live-Charts/issues/24#issuecomment-146203469

authors: TheCSharpCoder beto-rodriguez

repo: beto-rodriguez/Live-Charts


text:
ERROR [Better Auth]: column "emailVerified" does not exist

Is this suited for github?

[X] Yes, this is suited for github

To Reproduce
Use Drizzle Adapter with casing: snake_case.
Current vs. Expected behavior
When I try to sign up, it throws ERROR [Better Auth]: column "emailVerified" does not exist, but the column is in the schema and it does exist in the database. The problem may be that Drizzle automatically creates the name for its schema and Better Auth has problem with it.
My schema:
export const $user = pgTable("user", {
  ...,
  emailVerified: boolean().notNull(),
  ...
})

Even with Better Auth config, it still does not work:
  user: {
    modelName: "user",
    fields: {
      name: "name",
      email: "email",
      emailVerified: "email_verified",
      image: "image",
      createdAt: "created_at",
      updatedAt: "updated_at",
    },
  },

What version of Better Auth are you using?
1.1.3
Provide environment information
- OS: MacOS
- NodeJS: v20

Which area(s) are affected? (Select all that apply)
Backend, Client
Auth config (if applicable)
import { betterAuth } from "better-auth"

export const auth = betterAuth({
  baseURL: ConfigKit.vars.baseUrl,
  secret: ConfigKit.vars.secret,
  emailAndPassword: {
    enabled: true
  },
  database: drizzleAdapter(DbService, {
    provider: "pg",
    schema: {
      user: schema.$user,
      session: schema.$session,
      account: schema.$account,
      verification: schema.$verification,
    },
  }),

  // optionally without success
  user: {
    modelName: "user",
    fields: {
      name: "name",
      email: "email",
      emailVerified: "email_verified",
      image: "image",
      createdAt: "created_at",
      updatedAt: "updated_at",
    },
  },
});

Additional context
No response

However, when I manually specify:
export const $user = pgTable("user", {
  ...,
  emailVerified: boolean('email_verified').notNull(),
  ...
})

it starts working, but it is weird.

For Drizzle I had to remove this:
   fields: {
      name: "name",
      email: "email",
      emailVerified: "email_verified",
      image: "image",
      createdAt: "created_at",
      updatedAt: "updated_at",
    },

When you use the Drizzle adapter you don't need to specify how they appear in SQL to auth, just provide the schema
import * as schema from "@/db/schema"

export const auth = betterAuth({
    database: drizzleAdapter(db, { provider: "pg", schema }),
})

In your case modelName is user so you can remove your entire user object

Actually I think you would put modelName: "$user" ? I'm not sure where the dollar sign is coming from, my generations haven't given me that from better-auth cli or drizzle-kit pull

The dollar sign is just our convention so we do not confuse instance of the row and the table schema.
Upon more testing, the problem seems to be that you have to specify column name when the column name is more than one word:
emailVerified: boolean("email_verified").notNull(), // column name specified

However, it is perfectly valid to use this in Drizzle, but it is not accepted by Better Auth:
emailVerified: boolean().notNull(), // column name omitted

I strongly believe this is a bug in Better Auth, because the generated database is the same in both cases and the column name can be inferred according to casing: "snake_case" option in Drizzle config.

Did you try passing the entire Schema object and then using modelName with the $:
database: drizzleAdapter(DbService, {
    provider: "pg",
    schema: schema,
  }),

user: {
    modelName: "$user"
}

This is what I have working atm for Drizzle with latest version of Better Auth
import { betterAuth } from "better-auth"
import { anonymous, jwt, magicLink } from "better-auth/plugins"
import { drizzleAdapter } from "better-auth/adapters/drizzle"
import { db } from "@/db/database"
import * as schema from "@/db/schema"
import { Resend } from "resend"
import { EmailTemplate } from "@/components/email-template"
const resend = new Resend(process.env.RESEND_API_KEY)

export const auth = betterAuth({
    database: drizzleAdapter(db, { provider: "pg", schema }),
    emailAndPassword: {
        enabled: true,
        requireEmailVerification: true,
        sendResetPassword: async ({ user, url, token }, request) => {
            await resend.emails.send({
                from: "NEW-TECH <noreply@auth.newtech.dev>",
                to: user.email,
                subject: "Reset your password",
                react: EmailTemplate({ preview: "Reset Password", content: "Click the button below to reset your password.", action: "Reset Password", confirmationUrl: url })
            })
        },
    },
    emailVerification: {
        sendVerificationEmail: async ({ user, url, token }, request) => {
            await resend.emails.send({
                from: "NEW-TECH <noreply@auth.newtech.dev>",
                to: user.email,
                subject: "Verify your email address",
                react: EmailTemplate({ preview: "Verify Email", content: "Click the button below to verify your email.", action: "Verify Email", confirmationUrl: url })
            })
        },
        autoSignInAfterVerification: true,
        sendOnSignUp: true
    },
    trustedOrigins: ["http://localhost:3000"],
    advanced: {
        generateId: false,
        defaultCookieAttributes: process.env.NODE_ENV === "production" ? {
            sameSite: "none",
            secure: process.env.NODE_ENV === "production",
        } : undefined
    },
    plugins: [
        anonymous({ emailDomainName: "anonymous.com" }),
        jwt({ jwks: { keyPairConfig: { alg: "ES256" } } }),
        magicLink({
            sendMagicLink: async ({ email, token, url }, request) => {
                await resend.emails.send({
                    from: "NEW-TECH <noreply@auth.newtech.dev>",
                    to: email,
                    subject: "Magic Link",
                    react: EmailTemplate({ preview: "Magic Link", content: "Click the button below to securely log in.", action: "Log In", confirmationUrl: url })
                })
            }
        }),
    ],
    user: {
        modelName: "users",
        changeEmail: {
            enabled: true,
            sendChangeEmailVerification: async ({ user, newEmail, url, token }, request) => {
                await resend.emails.send({
                    from: "NEW-TECH <noreply@auth.newtech.dev>",
                    to: newEmail,
                    subject: "Verify your email change",
                    react: EmailTemplate({ preview: "Verify Email Change", content: "Click the button below to verify your email change.", action: "Verify Email Change", confirmationUrl: url })
                })
            }
        }
    },
    session: {
        modelName: "sessions",
        cookieCache: {
            enabled: true,
            maxAge: 5 * 60 // Cache duration in seconds
        }
    },
    account: {
        modelName: "accounts",
    },
    verification: {
        modelName: "verifications",
    }
})

export const {
    getJwks,
    getSession,
    getToken
} = auth.api

schema.ts
import { pgTable, foreignKey, uuid, text, timestamp, unique, boolean } from "drizzle-orm/pg-core"
import { sql } from "drizzle-orm"

export const books = pgTable("books", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	title: text().notNull(),
	authorId: uuid("author_id"),
	createdAt: timestamp("created_at").defaultNow().notNull(),
}, (table) => [
	foreignKey({
		columns: [table.authorId],
		foreignColumns: [authors.id],
		name: "books_author_id_authors_id_fk"
	}).onDelete("set null"),
])

export const users = pgTable("users", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	name: text().notNull(),
	email: text().notNull(),
	emailVerified: boolean("email_verified").notNull(),
	image: text(),
	createdAt: timestamp("created_at").notNull(),
	updatedAt: timestamp("updated_at").notNull(),
	isAnonymous: boolean("is_anonymous"),
}, (table) => [
	unique("users_email_unique").on(table.email),
])

export const jwks = pgTable("jwks", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	publicKey: text("public_key").notNull(),
	privateKey: text("private_key").notNull(),
	createdAt: timestamp("created_at").notNull(),
})

export const sessions = pgTable("sessions", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	expiresAt: timestamp("expires_at").notNull(),
	token: text().notNull(),
	createdAt: timestamp("created_at").notNull(),
	updatedAt: timestamp("updated_at").notNull(),
	ipAddress: text("ip_address"),
	userAgent: text("user_agent"),
	userId: uuid("user_id").notNull(),
}, (table) => [
	foreignKey({
		columns: [table.userId],
		foreignColumns: [users.id],
		name: "sessions_user_id_users_id_fk"
	}).onDelete("cascade"),
	unique("sessions_token_unique").on(table.token),
])

export const verifications = pgTable("verifications", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	identifier: text().notNull(),
	value: text().notNull(),
	expiresAt: timestamp("expires_at").notNull(),
	createdAt: timestamp("created_at"),
	updatedAt: timestamp("updated_at"),
})

export const accounts = pgTable("accounts", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	accountId: text("account_id").notNull(),
	providerId: text("provider_id").notNull(),
	userId: uuid("user_id").notNull(),
	accessToken: text("access_token"),
	refreshToken: text("refresh_token"),
	idToken: text("id_token"),
	accessTokenExpiresAt: timestamp("access_token_expires_at"),
	refreshTokenExpiresAt: timestamp("refresh_token_expires_at"),
	scope: text(),
	password: text(),
	createdAt: timestamp("created_at").notNull(),
	updatedAt: timestamp("updated_at").notNull(),
}, (table) => [
	foreignKey({
		columns: [table.userId],
		foreignColumns: [users.id],
		name: "accounts_user_id_users_id_fk"
	}).onDelete("cascade"),
])

export const authors = pgTable("authors", {
	id: uuid().default(sql`uuid_generate_v7()`).primaryKey().notNull(),
	name: text().notNull(),
	bio: text(),
	createdAt: timestamp("created_at").defaultNow().notNull(),
})

authors: daveycodez thefrana

repo: better-auth/better-auth


text:
🛑 Reges Hotel is down

In b08f956, Reges Hotel (https://reges.com.tr) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Reges Hotel is back up in 651561c after 14 minutes.

repo: betterwithagency/status-page


text:
Using bevy_gizmos feature with default-features=false renders nothing (requires extra bevy_pbr feature)

Bevy version
0.12
What you did
Tried to use bevy_gizmos with the following bevy dependency configuration:
[dependencies.bevy]
version = "0.12"
default-features = false
features = ["bevy_gizmos"]

What went wrong
Gizmos were not drawn.
Additional information
The fix was to add the bevy_pbr feature:
[dependencies.bevy]
version = "0.12"
default-features = false
features = ["bevy_gizmos", "bevy_pbr"]

I think we just need to add an explicit dependency on bevy_pbr here:
https://github.com/bevyengine/bevy/blob/ca1874e6c612d73306173065242aaaa8733c9b20/Cargo.toml#L132

Always adding bevy_pbr as a feature would prevent users that only need bevy_sprite from disabling it, and vice versa.

Since gizmos requires either bevy_pbr or bevy_sprite, perhaps a compile error could be thrown is neither is enabled.
#[cfg(all(not(feature = "bevy_pbr"), not(feature = "bevy_sprite")))]
compile_error!("bevy_gizmos requires either bevy_pbr or bevy_sprite. Please enable one as an optional dependency.");

authors: BD103 bonsairobo devil-ira

repo: bevyengine/bevy


text:
Rename StateScoped to StateExitDespawn, add the inverse variant StateEntryDespawn

What problem does this solve or what need does it fill?
The current naming of the StateScoped component is slightly misleading: it could be interpreted as "this entity will not exist outside of this state". Whereas in fact it merely despawns on exit of the given state, it doesn't care if you spawn an entity outside of the given state:
for (entity, binding) in &query {
    if binding.0 == *exited {
        #[cfg(feature = "bevy_hierarchy")]
        commands.entity(entity).despawn_recursive();
        #[cfg(not(feature = "bevy_hierarchy"))]
        commands.entity(entity).despawn();
    }
}

To me, this functionality is fine, I can't think of a situation where you would want to spawn something in a state it doesn't belong, only for it to be deleted instantly.
There is also no available inverse of this component: despawn an entity on entry to a state, which I recently found a need for, and have written a very similar mechanism to achieve the same thing.
What solution would you like?

Rename StateScoped to StateExitDespawn, or maybe a cleaner looking name than that.
Add the inverse version: StateEntryDespawn, having it operate during state transition, before OnEnter.

Here's a snippet of what I produced for my own game:
impl AppExtLifetime for SubApp {
    fn enable_state_entry_despawn<S: States>(&mut self) -> &mut Self {
        self.add_systems(
            StateTransition,
            state_entry_despawn::<S>
                .in_set(TransitionSchedules::<S>::default())
                .run_if(on_event::<StateTransitionEvent<S>>()),
        );
        self
    }
}

What alternative(s) have you considered?
No real alternatives.
Additional context
State transitions are such a powerful and flexible way to orchestrate game entity lifecyles and the flow of the game itself, it would be nice to see more features in this area.

IMO having entities "scoped to a particular state" is more simple concept than despawn-on-entry/exit. If StateScoped gets warning (or even instant despawn) against insertion during mismatched state, then these new components could be added to fill the gaps for advanced use.

Yes, maybe a warning will help to better specify the intention of StateScoped and having the other two I mention as separate.
I would say that the additional ones I'm suggesting are not "advanced" though, it seems more of a necessity as I develop a game driven by states and substates. I'm currently only developing a Pong clone, but rather than just throwing it together, I'm trying to build scalable infrastructure and learn from it going forward. I have a top-level GameState which contains Menu and Level, and then inside the "level" is Countdown and Play substates. Everything I spawn in the "level" gets scoped to the Level game state, so if at any point the player quits back to the menu, all entities in the level are despawned. The round starts with a Countdown and then transitions to Play when the timer has finished. I spawn the paddles and ball on entry to Countdown, which signifies a new round. When play has finished in the Play state, I want to loop back round to Countdown state to start a new round, and I want to simply respawn the ball and paddles. Therefore, I actually want to scope the paddles and ball to two states, which is where the current options fall short. By having a despawn-on-entry, I'm able to simply transition from Play back to Countdown and the StateEntryDespawn takes care of despawning the previous ball and paddles.

Note that this also opens the door to expanding the type into an enum as such:
pub enum DespawnOnExit<S: State> {
    Single,
    #[default]
    Recursive,
    Descendants,
    #[doc(hidden)]
    _PhantomData(PhantomData<S>),
}

Also "despawn on enter", "hide on enter", "hide on exit", "disable on enter", etc. become very reasonable to add.