Migrate to Swift 3 & Xcode 8

I ran the Xcode 8 automatic migration from Swift 2 to Swift 3 and updated optimization level as recommended by Xcode. Should now work with Xcode 8.
Anybody interested in trying this out now (in case it doesn't get merged very soon) simply integrate my fork e.g. via Carthage by using the following:
github "Dschee/DrawerController"

Looks like this is not maintained anymore... my PR (https://github.com/sascha/DrawerController/pull/53) in May has been ignored as well... Should I put the PR to your fork and use that from now on? ;)

cc @sascha to see if still interested in maintaining the repo, and thanks for the great work!

Sure, if there's no other active maintainer you can send the PR to my fork, too. I won't have time to habe a look this week though since I'm on vacation without my dev machine. ;)

Oops used wrong account - deleting the prev comments and reposted here:
Looks like this is not maintained anymore... my PR (#53) in May has been ignored as well... Should I put the PR to your fork and use that from now on? ;)
cc @sascha to see if still interested in maintaining the repo, and thanks for the great work!

@Dschee I've been a little busy lately, sorry about that. I've merged your PR into https://github.com/sascha/DrawerController/tree/swift-3.0 which I will try to keep up to date. I will merge it with master as soon as Swift 3.0 is final.


Harmonize Password C (LND/CL)

There is a password to lock the LND wallet and one to decrypt c-lightning (optional) - both are called password C but because the password itself is not stored in the device, because that would make the physical security that one once to gain from that password obsolete. But we need a way to make sure those both are really the same and are in in sync.
Also the same with the SSH password & with the WebUI - see #2482
We could write a small script that can create a password-hash file that contains a salt & hash of the password C. This file is created if password C (setup) is set by the user or the user used an entered password C sucessfully to unlock/decrypt a wallet (update). Now RaspiBlitz could test quickly before setting the password on the other service if its the same password C as already set on the other service before doing it.

I like the concept, but will need to see if there is anyone using CL alongside LND with significant value in both which would justify using the wallet encryption and no autounlock.
Autounlock for both CL and LND has the password stored on the disk.


feat: clean up datasource review page

Description
Remove the "Generate new page" button from the datasource review page and make the "New Query" button a primary button. Tests related to the removed generate CRUD page feature have been removed.
Fixes #31801
Automation
/ok-to-test<EMAIL_ADDRESS>:mag: Cypress test results

[!IMPORTANT]
🟣 🟣 🟣 Your tests are running.
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/9772204191
Commit: 1d77326f4674abe6143d5c7031f91130a4bf5598
Workflow: PR Automation test suite
Tags: @tag.Datasource

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[ ] No

Summary by CodeRabbit

New Features

Introduced a feature flag to conditionally show the Generate Page button based on the drag and drop building blocks setting.

Tests

Added tests to verify the rendering of components and buttons based on feature flags and plugin types.

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true

@rahulbarwal Line 556. There was a missing state - environment

@rahulbarwal I create an EE branch, pull the changes in from the CE remote, create a PR on that, and run CI?

@rahulbarwal  I have created this PR on EE and tests are passing - https://github.com/appsmithorg/appsmith-ee/pull/4601


feat: make executable operable on mutable references

This change is

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 44.51%. Comparing base (4febada) to head (67e66ff).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #147   +/-   ##
=======================================
  Coverage   44.51%   44.51%
=======================================
  Files          19       19
  Lines         656      656
  Branches      656      656
=======================================
  Hits          292      292
  Misses        350      350
  Partials       14       14

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


added reviewers

@overgoro56
Maybe https://github.com/ohbarye/review-waiting-list-bot/pull/37 would be what you'd want.


add ictu.edu to list domains

University of Information and Communication Technology is a university in Thai Nguyen city, Vietnam.

@luusytruong I am sorry, the domain ictu.edu.vn is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


Add SIX10.pw

https://www.six10.pw weighs 2.26 kilobytes, on https://gtmetrix.com/reports/six10.pw/qVy3MXFG/

sorry im a dumbass and wrote this high af


[Bug]: Docker Compose files in ./e2e/ not usable since latest Docker Compose release.

Preflight Checklist

[X] I could not find a solution in the documentation, the existing issues or discussions
[X] I have joined the ZITADEL chat

Environment
ZITADEL Cloud
Version
No response
Database
None
Database Version
No response
Describe the problem caused by this bug
Unfortunately, the latest Docker Compose update breaks the docker-compose.yml files in the ./e2e/ folder and its child folders.
docker compose --file ../e2e/docker-compose.yaml up --detach zitadel fails with the following error:
WARN[0000] The "UID" variable is not set. Defaulting to a blank string.
service "zitadel" can't be used with `extends` as it declare `depends_on`

see: https://github.com/docker/compose/issues/11544
To reproduce

Install the newest Docker Compose version 2.24.6
Execute docker compose --file ../e2e/docker-compose.yaml up --detach zitadel out of the ./e2e/ folder

Screenshots
No response
Expected behavior
No response
Operating System
No response
Relevant Configuration
No response
Additional Context
No response

Hey I will investigate the issue. But in the meantime you can downgrade to docker version 2.24.5 which still works 😁

It looks like docker will fix this https://github.com/docker/compose/issues/11544#issuecomment-1987785162

https://github.com/docker/compose/issues/11544#issuecomment-2010785963
If you do not mind I close this issue. Feel free to reopen if it does not work out 😓


Suzanne/external storage

Thought you might want to take a look at this before assigning it to Thomas. The External Volumes text is the same as on the Enterprise site, and the Local Volumes section was already there; the only thing to look over is index.md.
Also... I finally ran into the npm problem that you and Emily encountered. So I haven't been able to view the site on my local machine.

lgtm


SQL syntax: UnsupportedFeatureException[Cannot ORDER BY '<expression>': invalid return type 'undefined'.]

About
The test case test_search_runs_keep_all_runs_when_sorting fails when invoking search_runs with an order_by parameter.
run_results = self.store.search_runs(
    [experiment_id], None, ViewType.ALL, max_results=1000, order_by=["tag.t1"]
)

Details
The root cause, which generates the SQL statement outlined below, is this elaborate code within MLflow's mlflow.store.tracking.sqlalchemy_store._get_orderby_clauses:
# sqlite does not support NULLS LAST expression, so we sort first by
# presence of the field (and is_nan for metrics), then by actual value
# As the subqueries are created independently and used later in the
# same main query, the CASE WHEN columns need to have unique names to
# avoid ambiguity
if SearchUtils.is_metric(key_type, "="):
    case = sql.case(
        # Ideally the use of "IS" is preferred here but owing to sqlalchemy
        # translation in MSSQL we are forced to use "=" instead.
        # These 2 options are functionally identical / unchanged because
        # the column (is_nan) is not nullable. However it could become an issue
        # if this precondition changes in the future.
        (subquery.c.is_nan == sqlalchemy.true(), 1),
        (order_value.is_(None), 2),
        else_=0,
    ).label(f"clause_{clause_id}")

else:  # other entities do not have an 'is_nan' field
    case = sql.case((order_value.is_(None), 1), else_=0).label(f"clause_{clause_id}")
clauses.append(case.name)
select_clauses.append(case)
select_clauses.append(order_value)

Exception
UnsupportedFeatureException[Cannot ORDER BY 'case(true, $2, (value IS NULL), $1)': invalid return type 'undefined'.]
E               [SQL: SELECT DISTINCT runs.run_uuid, runs.name, runs.source_type, runs.source_name, runs.entry_point_name, runs.user_id, runs.status, runs.start_time, runs.end_time, runs.deleted_time, runs.source_version, runs.lifecycle_stage, runs.artifact_uri, runs.experiment_id, CASE WHEN (anon_1.value IS NULL) THEN ? ELSE ? END AS clause_1, anon_1.value
E               FROM runs LEFT OUTER JOIN (SELECT tags.key AS key, tags.value AS value, tags.run_uuid AS run_uuid
E               FROM tags
E               WHERE tags.key = ?) AS anon_1 ON runs.run_uuid = anon_1.run_uuid
E               WHERE runs.experiment_id IN (?) AND runs.lifecycle_stage IN (?, ?) ORDER BY clause_1, anon_1.value, runs.start_time DESC, runs.run_uuid
E                LIMIT ? OFFSET ?]
E               [parameters: (1, 0, 't1', '147893387621389', 'active', 'deleted', 1000, 0)]
E               (Background on this error at: https://sqlalche.me/e/20/f405)

Intermediate query
This is the query in intermediate form while being created and processed by SQLAlchemy.
SELECT DISTINCT runs.run_uuid, runs.name, runs.source_type, runs.source_name, runs.entry_point_name, runs.user_id, runs.status, runs.start_time, runs.end_time, runs.deleted_time, runs.source_version, runs.lifecycle_stage, runs.artifact_uri, runs.experiment_id, CASE WHEN (anon_1.value IS NULL) THEN :param_1 ELSE :param_2 END AS clause_1, anon_1.value
FROM runs LEFT OUTER JOIN (SELECT tags.key AS key, tags.value AS value, tags.run_uuid AS run_uuid
FROM tags
WHERE tags.key = :key_1) AS anon_1 ON runs.run_uuid = anon_1.run_uuid
WHERE runs.experiment_id IN (__[POSTCOMPILE_experiment_id_1]) AND runs.lifecycle_stage IN (__[POSTCOMPILE_lifecycle_stage_1]) ORDER BY clause_1, anon_1.value, runs.start_time DESC, runs.run_uuid
 LIMIT :param_3 OFFSET :param_4

Remarks
No workaround for this has been found so far, so, most probably, the test case will be skipped for now. However, depending on needs, using MLflow's search_runs feature, together with sorting, may be an important feature we would not like to skip. So, I will be happy for any support here.

Analysis
I think we need to find a different solution for this particular line of code, which generates an SQL statement CrateDB does not understand.
SQLAlchemy
case = sql.case((order_value.is_(None), 1), else_=0).label(f"clause_{clause_id}")

SQL
CASE WHEN (anon_1.value IS NULL) THEN :param_1 ELSE :param_2 END AS clause_1

Thoughts

We will need to evaluate if we need to patch MLflow, or if we could enhance the CrateDB SQLAlchemy dialect in some way that it would skip producing such statements.
Actually, I am not yet sure if the CASE WHEN is the culprit here, or just using that kind of statement within an ORDER BY clause on behalf of clause_1.

I found an application-based monkeypatch solution for this, essentially intercepting the return values of _get_orderby_clauses, and removing the corresponding CASE WHEN statement clauses. The test case test_search_runs_keep_all_runs_when_sorting succeeds now, this is all I was aiming at here.
First, I tried to use a generic solution by overwriting SQL Compiler's visit_case visitor method. While this was able to remove the CASE WHEN clause completely, so this is in general a feasible approach, the MLflow application logic at this place defies that attempt, because it adds the corresponding statement clause item to two different lists, coupling its bookkeeping stronger to subsequent application logic.
clauses.append(case.name)
select_clauses.append(case)

In that way, there was no other way to work around MLflow application logic instead.

Removing that clause from the query generator obviously had to have negative side effects. Why would the code otherwise have been there on the first hand?
It is failing the test_order_by_attributes test case, at this spot where the result order changed, with respect to None values.
E       AssertionError: assert ['None', '789', '456', '234', '123', '-123'] == ['789', '456', '234', '123', '-123', 'None']
E         At index 0 diff: 'None' != '789'
E         Full diff:
E         - ['789', '456', '234', '123', '-123', 'None']
E         ?                                    --------
E         + ['None', '789', '456', '234', '123', '-123']
E         ?  ++++++++

tests/test_tracking.py:1568: AssertionError

The corresponding patch to omit the offending SQL clause looks like this.
https://github.com/crate-workbench/mlflow-cratedb/blob/34a2b32f4ce9e02d36bf22938cb69e12de9eb5d3/mlflow_cratedb/patch/mlflow/tracking.py#L35-L63
This one is needed to compensate that by code instead of SQL.
https://github.com/crate-workbench/mlflow-cratedb/blob/34a2b32f4ce9e02d36bf22938cb69e12de9eb5d3/mlflow_cratedb/patch/mlflow/tracking.py#L66-L157

Maybe @hammerhead or @hlcianfagna can find a workaround how to formulate the query outlined in the original post using CrateDB?

@amotl I tested with 5.4.2 and I am not seeing the UnsupportedFeatureException with this query, were you testing with an earlier or newer version by any chance?

Dear Hernan,
thanks for looking into this. I think I used CrateDB Nightly. Indeed, CrateDB supports CASE WHEN ... THEN ... END, I must have overlooked this detail.
Hm, maybe the error message indicates that, while it works in general, the engine can not provide sorting on an alias of that type of clause?
CASE WHEN (anon_1.value IS NULL) THEN ? ELSE ? END AS clause_1

ORDER BY clause_1

With kind regards,
Andreas.

@amotl
CrateDB does support this:
cr> select CASE WHEN (1 IS NULL) THEN 'yes' ELSE 'no' END AS clause_1 order by clause_1;
+----------+
| clause_1 |
+----------+
| no       |
+----------+
SELECT 1 row in set (0.015 sec)

I highly recommend to always try the SQL out to verify that it's not the query in general ;)

Interesting, thanks. Then, some other combination of the SQL makes this statement fail somehow. I will re-evaluate the situation by using the plain SQL statement, as you suggested, in order to find out further details.

Is it eventually related to https://github.com/crate/crate/issues/15029?


Second is to look into performing an irregular state change prior to gas estimation to pre-fund the account (only when it doesn't have enough gas)?

Im working on a hacky prototype to just see how things work.  Im probably not grasping some basic concepts.
Im stuck on the following.  After setting the balance to the max, subsequent state_db contexts don't show the change in balance.  My assumption was the mutable_state_db would have a lasting effect on the state, but maybe it is meant as a temporary state?
(Pdb) list
251  	                _transaction.get_sender = \
252  	                    lambda: to_bytes(hexstr='0x7760c6D8c0eA7A764F13fb5b034A574f59c1fdd4')
253  	                _transaction.sender = to_bytes(hexstr='0x7760c6D8c0eA7A764F13fb5b034A574f59c1fdd4')
254
255  	            state_db.set_balance(transaction.sender, UINT_256_MAX, validate=False)
256  ->	            computation = self.execute_transaction(_transaction)
257
258  	        self.revert(snapshot)
259
260  	        return computation
261
(Pdb) state_db.get_balance(transaction.sender)
115792089237316195423570985008687907853269984665640564039457584007913129639935
>>> with self.state_db() as db:
...   db.get_balance(transaction.sender)
...
0
>>>
now exiting InteractiveConsole...

I can't see your code so this is a guess.
https://github.com/ethereum/py-evm/blob/master/evm/vm_state.py#L117
I suspect you're still within the context manager context for the mutable statedb which doesn't commit it's state until the context exits.  This means that any nested retrieval of the state_db within that context won't be operating on the same state root (it would be operating on whatever the previous one was) so it would show the previous balance.

Thanks!  I missed that detail of the db state context.

@pipermerriam Im getting the following error in Travis, and I can't tell if this is from changes i have made: trie.exceptions.InvalidNode: Unable to parse node.  Has this come up before?  Could the irregular state change be having some unintended effect?

Is this potentially a bug in the binary trie?

Could be, but I don't think so. Either way, I don't think that's the reason why the build is failing, as this PR shouldn't affect what tests like test_auxiliary/test_contract.py write to the DB.
One thing that could (or could not) be happening is that a wrong value is used as a state root somewhere. If at that place some other value is stored then above error would be raised. No idea why this seems to happen with the binary trie only though.
@NIC619 who implemented the binary trie might have better insights.

Does the arbitrary address that I hardcoded have the risk of colliding with a real address?

My recommendation would be to use an address with a private key like b'10' * 16 so that:

it's clear that it's not a real private key.
if it collides with someone's actual address, it's a private key that nobody should be using for anything that matters.

@dylanjw #511 should fix the node parsing error. Sorry for the trouble.

I pushed a rebase for this.  I think it's good to merge, looking it over one more time while CI runs.


Make namespace and flow optional when using keep_original_source = true

right now, we could read it from the yaml like that
resource "kestra_flow" "demo_flows" {
  for_each = fileset(path.module, "kestra/io.kestra.demo/*.yml")
  flow_id = yamldecode(templatefile(each.value, {}))["id"]
  namespace = yamldecode(templatefile(each.value, {}))["namespace"]
  content = templatefile(each.value, {})
  keep_original_source = true
}

but we are able to read it directly from the yaml since the id and namespace are mandatory

Or make the opposite : use terraform fields and internally generate this mandatory part of the YAML.
Makes sense to define these values with TF params to me.
WDYT ?

I've an issue, the goal keep_original_source is to kept exact source of the flow, if the people want to add comment everywhere (at the beginning, end, between namespace and id properties), it must be able to it, when we unserialize, serialize a yaml string, most of parsers will break that (remove comment, changing quote, ...), so it appear to be not the good way

Okey, and what about doing it in the API call : https://kestra.io/docs/api-guide/#post-/api/v1/flows.
Using values from content for everything except id and namespace if var provided using TF ressource, otherwise use all values from content

In the end it's more a question about how we see the terraform provider.
If no logic at all should be implemented within the provider then we go with only content & keep_original_source params.
Otherwise we could also have flow_id, namespace and some other future fields.

As discuss with Ludo long times ago, this would be tricky, so we decided that the change will be done when we will fully change the API to create flows

As discuss with Ludo long times ago, this would be tricky, so we decided that the change will be done when we will fully change the API to create flows

OK yes. Can't wait for this. Do you have an idea when it will be released?

@aballiet We just deprecated methods using JSON to create/edit flow, so I can't really tell


v1.7 backports 2020-07-30

#12719 -- Parallelise CRD registration to improve bootstrap time (@tgraf)

Note: conflict resolution for the second commit was to keep the
k8sCachesSynced channel which was moved to another
location in the latest tree.

And updated the bpf.sha.

Once this PR is merged, you can update the PR labels via:
$ for pr in 12719; do contrib/backporting/set-labels.py $pr done 1.7; done

test-backport-1.7

test-backport-1.7

test-backport-1.7

test-backport-1.7

test-backport-1.7

test-backport-1.7

retest-ginkgo

test-backport-1.7


adds npm-install, tini, and npm-start to npm group

This npm-install does not set a launch process.
See https://github.com/paketo-buildpacks/npm-install/issues/109
Co-authored-by: Arjun Sreedharan<EMAIL_ADDRESS>

Will wait for a resolution to https://github.com/paketo-buildpacks/npm-start/issues/12 before merging this


Interest in working AOI into get_nhd() and subset_nhd() workflows?

This is to gage interest in a pull request leveraging the AOI package to facilitate bringing in NHD data from the CIDA server. Advantages are the abilty to  describe regions by common place names, spatial (sf/sp/raster) files, nwis ids, or COMIDs.
AOI will soon be on CRAN and a pull request would look very much like this from HydroData.
library(HydroData)
#> Loading required package: AOI
#> Loading required package: leaflet
test1 = getAOI('UCSB') %>% findNHD()
#> Returned object contains: 19 nhd flowlines
plot(test1$nhd$geometry, col = "blue", lwd = test1$nhd$streamorde)
plot(test1$AOI$geometry, border = 'red', add = T)

test2 = findNHD(comid = 101)
#> Returned object contains: 1 nhd flowlines
plot(test2$nhd$geometry)

test3 = findNHD(nwis = 11407000)
#> Returned object contains: 1 nhd flowlines
plot(test3$nhd$geometry)

test4 = getAOI(list('Yellowstone National Park', 30, 30)) %>% findNHD(streamorder = 4)
#> Returned object contains: 41 nhd flowlines
unique(test4$nhd$streamorde)
#> [1] 5 4
plot(test4$nhd$geometry)

Created on 2019-09-14 by the reprex package (v0.3.0)
Thanks!

I'm very interested. I like the idea of some convenience functions that help use the building blocks I've got here in nhdplusTools. What are you thinking in particular?

If I have adequately read through the nhdplusTools functonality, it would be to (1) extend get_nhdplus_bybox to get NHD flowlines (in addition to NHDArea and NHDWaterbodies) by spatial feature subsetting; (2) add a geocoding front to 'get_nhdplus_point';  and  (3) add some addtional filters for things like stream order.
Moreover I suppose it would be integrating the bybox, bypoint and by_id calls into a single function (?get_nhdplus?) that would select the needed process from the user provided inputs.

Going to be merging my latest work on plot_nhdplus() and the currently unexported get_plot_data() functions. They not take a bbox rather than outlets -- which is an ideal hook for use with AOI.
I wonder if we could look at porting some of the HydroData functionality over here so you don't have to maintain it there? Would be an easy way to get some of the logic you have there onto CRAN without jumping through that hoop.
Have a look at this latest stuff in the plot_nhdplus.R file and see what you think. I'm about ready for a major refactor just to clean house, but in general this is all coming together nicely and I see how the stuff you've been doing could fit really well.

Closing as this would be covered by #155


Validation of identifiers within AnonCreds objects

@TimoGlastra and I had a discussion about the validation of identifiers used within the anoncreds-rs codebase.
I created a PR https://github.com/hyperledger/anoncreds-rs/pull/25 that removes the creation and internal references to the id property inside the anoncreds object and I extract to a seperate string. With this I also removed the validation of the identifier as my understanding was that any identifier is allowed.
Timo pointed me to a section in the spec, https://hyperledger.github.io/anoncreds-spec/#anoncreds-identifiers , which mentions that identifiers SHOULD be validated.
Now, @swcurran I guess the main question is, do we allow any kind of identifier and remove the validation (and change the part where we SHOULD validate) or can external identifiers only be URIs (or legacy) and we add the validation back?

As discussed in 12/12/2022 WG:

Identifiers MUST be validated
Identifier MUST be a URI (will cover current identifiers and legacy).

what does validation means in this contexts?

Closed by #142


shellPrompt customisation is incompatible with sbt-mode in Emacs

sbt-mode uses regexes to find where the prompt is, and this breaks if the prompt is customisable. Please don't customise the prompt by default.

aha, it is only added by enabling miscSettings. It would be good to recommend this this as a user setting and not a project setting.


404 error on images and video

Hi, great component! However, I'm having some difficulty getting the component to load both the image and the video.
I'm using the build system so *.vue files and the yarn build for production. However I'm testing under hot deploy.
Folder structure:
[src]
----/assets
----/components etc.

To access a regular image, this works:
<img style="height: 4.32em; padding-bottom: 0.8em;" src="../assets/client.png" alt="logo">
However, when I pass the same paramters to video-bg, I get 404 errors on both the video and image.
My code is like this:
<video-bg :sources="['../assets/bg-video.mp4']" img="../assets/bg-image.png" />
I've tried all sorts of variants. I suspect because it's the video-bg component stored in a different subdirectory (node_modules) the relative reference is breaking. I just don't want to have such hack to have fixed paths to your component, since that might change in the future.
I've also tried: '~/assets...' and<EMAIL_ADDRESS>and '/assets...' all fail with a 404.
Any pointers would be greatly appreciated. Thanks

Hi,
Is this issue resolved.
I am having the same issue.
All the paths, I have tried. NO USE.
Please let me know if any solution works.

If somebody has still this problem, you can do this:
<video-bg :sources="[path]"<EMAIL_ADDRESS>     <!-- If you want to add content here, a slot is waiting! -->
</video-bg>

data () {
   return {
     path<EMAIL_ADDRESS>   }
 }

not  working in laravel vue  ? , why , my video path can't detected


Feature: Add support for dbt-core 1.8.0

Description and motivation
Today, dbt-core 1.8.0 was released, which introduced some new features for developers, and introduced a wildly different layout for dbt artifacts and common code. To support this new version, I added extra code paths to handle importing dependencies between the paths present for 1.7.x and 1.8.0. Along the way, I abstracted out the logging code to make this more maintainable long-term.

Hot diggity dog! All versions passed their tests. :shipit:


Add Shade Ruangwan to Contributors list

Please let me know if I did something wrong.

@sruangwan, from what I understand, you went through this correctly. I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I merged it?

@Roshanjossey, out of the tutorial repositories I tried my first contribution. Yours is the most detailed one. At first, I had a question, should I merge my new added branch to my forked master before submitting a pull request or not. Following your guideline answers this question well enough. Anyway, I still don't know what to do if my commit gets a merge conflict.

@sruangwan, you don't have to merge feature branch to master for submitting pull request. In case of merge conflict, you have to fetch changes from upstream (the parent repo you forked from), resolve conflicts and push to the same branch. We'll soon add some material in additional materials to address this.
I’d urge you to continue contributing to other open source projects.
We also have a slack team to help/mentor people trying to contribute to open source projects.
You can join the team by going to https://firstcontributions.herokuapp.com


[5.8] Sequential array support to pass args to App::call()

Addresses:
https://github.com/laravel/framework/issues/26851

Re-submission:
https://github.com/laravel/framework/pull/27751

#27751 was rejected because that was a "code bloat", but in this PR the same goal is achieved with a much simpler logic, (no nested conditions) and almost half the code.

Tests:
The tests were reviewed and now are more covering more cases. (compared to https://github.com/laravel/framework/pull/27751)

Why it does not break ?
This PR adds a protected method which steps in only when the user input is a none empty sequential array, to avoid intercepting the flow of previous functionality.

End users can use app()->call() just like native call_user_func_array and pass the arguments as sequential array. (I think there are also cases for laravel to use it internal e.g. in facade class)
I don't know how much you are interested for the feature to be included, but any way I wanted to share this improvement I found over the last PR, in case you like it.

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.


check for kerberos authentication before starting

prevents unexpected silent failures

You can check for Kerberos credentials with the method used here: https://github.com/stefco/geco_vm/blob/master/static-files/home-directory/bin/ligo-auth-get-username
But I don't think this will work with ligo-proxy-init unless you specify the -k flag.


crosscompile with CMake causing a problem

Hi,
I followed the instructions on this page and CMake did not build successfully:
https://github.com/OpenMathLib/OpenBLAS/wiki/How-to-use-OpenBLAS-on-Cortex-M
This is the problem I am getting:
CMake Error at cmake/utils.cmake:23 (file):
  file STRINGS file
  "/build/deps/OpenBLAS-0.3.26/kernel/arm/KERNEL.ARMv5"
  cannot be read.
Call Stack (most recent call first):
  kernel/CMakeLists.txt:13 (ParseMakefileVars)
  kernel/CMakeLists.txt:1371 (build_core)

The file does exist and it seems that it is readable to me with correct permissions.
Any reason why this is happening?

Yes, I did, sorry for the mistake, now it works.
I did not imagine that it was related, it is parsing and matching the CMake commands
Thanks, Martin, I will close the issue


RFC: Figure out local broadcasts

There's a lot that needs to be figured out regarding how we're going to manage local broadcasts. We already have the local broadcast packet in the proxy, but how would we handle events that happen on the edge of that local region? For instance, a player should be marked as despawning (or something like that) once they cross the radius of visibility. I think we will need to track some amount of state on the proxy.
Current protocol:
https://github.com/andrewgazelka/hyperion-proto/blob/50884bc32a02454d6dcbd5c0811b66d65380f480/src/server_to_proxy.proto#L1-L57
Ideally, we don't want too much spaghetti code.

Since the majority of local broadcasts are from entity movement packets, I'll describe my idea for entity movement packets below:
In the proxy, we will want to implement droppable movement packets to support users with slow connections and to reduce the network usage of the proxy. We should structure the entity movement code to support this to avoid a rewrite later and since this would help with despawning far away entities. If we were to drop movement packets with deltas, this would cause the entity's position to be incorrect because future deltas will be based off of the dropped packet's delta. A potential solution to this could be:
On the proxy:

Have multiple streams per entity that players can subscribe to. For example, entities might have 5 streams each: one stream with entity movement updates sent every tick, one with updates sent every 2 ticks, one with updates sent every 5 ticks, one with updates sent every 10 ticks, and one with updates sent every 20 ticks. The exact numbers can change later, but this is a good starting point.
Each player updates what streams they're subscribing to based on how far they are from that entity and the player's internet speed every 20 ticks. Note that 20 is divisible by each interval above, so this shouldn't cause issues with deltas. This step can also be used to send despawn packets to entities that are far away.
On each tick, iterate through each stream, generate the packet, and send it to subscribers.

On the server:
On each tick, send entity movements to each proxy on each tick.


Implement TextEditor

This is probably going to be one of the most complex views, but definitely worth it and is something that I see that people are requesting.

+1 for this. TextEditor (in SwiftUI 2020) is nearly one-for-one with

Thank you very much!

Thanks for helping us prioritize this! 🙂


Add implementations of Microsoft.Extensions.AI's IChatClient / IEmbeddingGenerator

This enables OpenAiService to then be consumed by anyone in the .NET ecosystem written in terms of these exchange types.
Examples in https://www.nuget.org/packages/Microsoft.Extensions.AI.Abstractions/9.0.0-preview.9.24525.1#readme-body-tab.
More details in https://devblogs.microsoft.com/dotnet/introducing-microsoft-extensions-ai-preview/.

Hmm, that's interesting. Not sure how I missed this announcement. I will check this after the real-time API implementation completed.

@stephentoub Is there any documentation for changelogs? I'm struggling to find details about the changes and how to address the breaking changes.

That would be great, Thanks!


feat: more builders and writing manifests

#172
This PR adds Builders for v1/2 ManifestEntry and for DataFile as well as helper funcs to write ManifestLists and Manifest files.
Bonus: fixes a max recursion depth panic in dataFile.EqualityFieldIDs()
One thing I'm not super happy with is manifestEntryV1/2.Data's type has been changed from dataFile to DataFile (the interface type). This was the best way I could come up with to make the builders for both work, but I also feel like it diverges from the pattern a little bit. This may not be a huge deal, but something to consider. You can see how the effects rippled out a little bit in the tests.

@dwilson1988 can you please rebase/fix the merge conflicts?

@dwilson1988 can you please rebase/fix the merge conflicts?

@nastra done!


not a issue, question

The period cannot appear in any literal (even inside quotes). The maximum test case title length is 80 characters.

I'm assuming this testcase "fixed tests for n = 9.2, x = 5 and a = 1" or any other similar decimal based would not be possible ? (or I read the entire para wrong)

You are correct: it is not possible. The current preprocessor is very primitive. But it will be not difficult to improve it later.

Ok. thanks


Ipv6 from http://pub.freerdp.com/repositories/deb/stretch timeout

hi,
the Ipv6 from pub.freerdp.com  timeouted since weeks:
ruben@work:[~] > host pub.freerdp.com
pub.freerdp.com has address <IP_ADDRESS>
pub.freerdp.com has IPv6 address 2a02:1b8:badc:ab1e::f8ee
ruben@work:[~] > mtr --report 2a02:1b8:badc:ab1e::f8ee
Start: Mon Nov 28 19:56:35 2016
HOST: work                        Loss%   Snt   Last   Avg  Best  Wrst StDev
1.|-- kr-net-fw001-v100.dus.via  0.0%    10    0.2   0.2   0.2   0.3   0.0
2.|-- 2a01:9820:0:1::2           0.0%    10    1.6   1.5   1.5   1.6   0.0
3.|-- ge-1-1-5-0.dus2-j2.core.v  0.0%    10    1.8   2.2   1.7   4.0   0.5
4.|-- ge-0-3-0-0.dus2-j.mcbone.  0.0%    10    1.7   2.5   1.7   8.1   1.9
5.|-- xe-1-0-1-0.ffm3-j.mcbone.  0.0%    10    5.6   5.6   5.6   5.7   0.0
6.|-- te3-3.edge01.ix.fra.nessu  0.0%    10    6.5   6.9   6.1  12.4   1.9
7.|-- 2a02:1b8::18:1             0.0%    10   34.7  69.3  19.1 285.4  88.4
8.|-- 2a02:1b8::14:1             0.0%    10   19.7  56.2  19.2 215.6  66.5
9.|-- 2a02:1b8::19:2             0.0%    10   27.6  34.0  19.4  81.1  24.2
10.|-- ???                       100.0    10    0.0   0.0   0.0   0.0   0.0
ruben@work:[~] >

@ruben-herold thanks for the report. It is reachable from the other ipv6 hosts I tested from but I'll check with our provider.

@ruben-herold should work again. Sorry for the inconvenience.


Update types for sqlBatch

Expected Behavior
Having types for sqlBatch method
Current Behavior
As you can see we don't have types here https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/react-native-sqlite-storage/index.d.ts
Thanks for your help!

Hello there @jdnichollsc . I do not own those type defs. Suggest you file a PR in that repo to have them updated.


Upgrade Nix version

Makes currently uses Nix 2.15: https://github.com/fluidattacks/makes/blob/main/makes/cli/env/runtime/main.nix#L9
Newest version is: https://nixos.org/download/#
Let's upgrade it

First I'll deprecate node2nix #1378 and keep working on this issue


Fix compatiblity with SL 4.3

Changes to make the plugin work with SublimeLinter 4.3.

This won't pass pep257 because of the D202 ignore in Travis, I think. Passes for me, without any ignores, else needs ignore D202 AND D203, or else D203 conflicts with D211.


Using flags

I'm trying to figure out how to use the countries gem in my Rails 5 app so that I can display a flag emoji in my view.
In my gemfile, I have:
gem 'countries', :require => 'countries/global'
gem 'country_select'
I have a model called address. It has an attribute called :country
In my address.rb I am trying to copy the gem instructions. The instructions for using the flags say:
Country Code in Emoji
c = Country['MY']
Country.emoji_flag # => "🇺🇸"
The instructions don't make sense to me. What is "c"? Why isn't "c" used in the 2nd line? Why is "Country" a class name when in the examples above, it's an attribute? Do I need to do something to convert my country attribute in my address table into something that the gem can read to determine which flag to present?
None of these questions appear to be answered anywhere. I think this is another instance of things that are assumed that everyone (except for me) seems to intuitively understand. They are roadblocks for me.
In my address model, I have:
def country_name
  country = self.country
  ISO3166::Country[country]
end

def country_emoji
  country.emoji_flag
end

The first method works fine. It displays the right country name.
The second method is my attempt at being able to get a flag. In my address view, I then have:
`<%=  Address.first.country_emoji %>`

This doesnt work. It produces an error that says:

undefined method `emoji_flag' for "AU":String

AU is the correct code for the relevant country - so it must be working to figure out which country it should be looking for.
If I try changing the second method (so as to use the first method) to:
def country_emoji
    country_name.emoji_flag
  end

I get an error that says:

undefined method `emoji_flag' for #ISO3166::Country:0x007fe87145d7e0

Can anyone figure out how to use the countries gem to display a flag?
I saw this post which suggests there is an example app somewhere to show how to apply the instructions in the readme - although that doesnt seem to exist anymore.

I am sorry! Those docs are just wrong.  Two things, you must be on version 2.0 to have the flags.
Second, the #emoji_flag is an instance method on the Country class so it should be called as such
c = Country['US']
c.emoji_flag # => "🇺🇸"

In this example, c is any instance of the Country class.

I am on version 1.2.5, which the gem documentation says is the most recent version. How do I get to version 2?
Once that is answered, how can I used the flag with a variable country attribute?

@MincePie, upgrading your application is very dependent on you.  But if you are using bundler it should be something along the lines of bundle upgrade countries.   Though if another one of your gems depends on countries you will need to make sure it can be upgraded to the 2.0 release.  A common gem that uses us is country_select which will need to be upgraded to their 3.0 release to be able to upgrade.
Our most recent release is 2.0.5 as seen on rubygems.
As for using it, I have provided an example above as well as corrected your documentation, some of the code you presented should work if you were running on the 2.0 version.

Thanks a lot. I've got it going now. Thanks again for the help.


Broken HomePresenter example link in Presenter docs

Hi I found broken documentatoin link for HomePresenter example in nested presenter docs
I made a PR to fix but I saw that this repo is read-only so I figure I create an issue instead.
Here's my branch if you want to cherry pick or see the correct link.
https://github.com/DjakaTechnology/circuit/pull/1
Thank you

Thanks, happy to take the PR you submitted if you want to reopen it!


Updating URL on Leanpub where you find your author API key

Just a quick documentation fix. Thanks!

Thanks! This will be deployed in the next few days. :cake:


1.9.4 Curse uploads missing EnderCore dependency.

I.e. http://minecraft.curseforge.com/projects/ender-io/files/2310038
There should be "Requires EnderCore" at the bottom.

Fixed. Not sure where this went.


Added OOTB sample Tenant Roles.

Added OOTB sample Tenant Admin & Quota Admin roles, these role can do everything that a normal admin can do in addition to that Tenant Admin also has access to Tenant CRUD in Access Control. Tenant Quota admin has access to Manage Quotas.
Added RBAC checks to Access Control tree building code and related screens to only show nodes/links if user has access to those features.
Added spec test to verify that signed in user only sees nodes based on their role.

before:

after:

OPS Explorer logged in as Tenant Admin

Added groups to match new OOTB sample roles

Closed a PR that got messed up during rebase from upstream master https://github.com/ManageIQ/manageiq/pull/4310
@dclarizio please review/test

@bascar can you please review these role features?  I'm wondering if we want to NOT give these admins such things as Automate and/or Policy?  Perhaps Tenant Admin should also have view/add/update of groups/users as well so they can create groups to assign to tenants?
These can all be changed relatively easily in the future, so let us know if this is good enough for now or if we should tweak it a bit.
Thx, Dan
We've added Tenant Admin and Tenant Quota Admin roles.  They both have these main features (we copied admin, so Containers is not checked, but could be):

Tenant Admin has this set in Access Control:

and Tenant Quota Admin has this set in Access Control:

@bascar can you please review these role features?  I'm wondering if we want to NOT give these admins such things as Automate and/or Policy?  Perhaps Tenant Admin should also have view/add/update of groups/users as well so they can create groups to assign to tenants?
These can all be changed relatively easily in the future, so let us know if this is good enough for now or if we should tweak it a bit.
Thx, Dan
We've added Tenant Admin and Tenant Quota Admin roles.  They both have these main features (we copied admin, so Containers is not checked, but could be):

Tenant Admin has this set in Access Control:

and Tenant Quota Admin has this set in Access Control:

Dan,
These look like good defaults, I don't see any issues.
*Brad Ascar *
Red Hat, Inc.
Field Product Manager - CloudForms | http://www.redhat.com/cloudforms
<EMAIL_ADDRESS>|<PHONE_NUMBER> | Cell<PHONE_NUMBER>
On Tue, Sep 15, 2015 at 1:53 PM, Dan Clarizio<EMAIL_ADDRESS>wrote:

@bascar https://github.com/bascar can you please review these role
features? I'm wondering if we want to NOT give these admins such things as
Automate and/or Policy? Perhaps Tenant Admin should also have
view/add/update of groups/users as well so they can create groups to assign
to tenants?
These can all be changed relatively easily in the future, so let us know
if this is good enough for now or if we should tweak it a bit.
Thx, Dan
We've added Tenant Admin and Tenant Quota Admin roles. They both have
these main features (we copied admin, so Containers is not checked, but
could be):
[image: tenantadminfeatures]
https://cloud.githubusercontent.com/assets/3433754/9862440/bea2d224-5aed-11e5-987c-21ccc431614c.png
Tenant Admin has this set in Access Control:
[image: tenantadminaccess]
https://cloud.githubusercontent.com/assets/3433754/9862445/c95845b4-5aed-11e5-8c42-2d7f60cd31bd.png
and Tenant Quota Admin has this set in Access Control:
[image: tenantquotaaccess]
https://cloud.githubusercontent.com/assets/3433754/9862456/da3f4224-5aed-11e5-96cb-cf15ef517cdc.png
—
Reply to this email directly or view it on GitHub
https://github.com/ManageIQ/manageiq/pull/4327#issuecomment-140481114.

@bascar as long as you realize that without access to groups and/or users, the tenant admin can't put any users into his tenant, then I guess we can go with this.  The ONLY one then that can do that will be super_admin.  If we need tenant admins to be able to fill out their tenant groups/users, they will need such access.  Let me know if you want this else I'll merge it as is.  Thx, Dan

Dan,
Thanks for the clarification. The tenant admins will need to manage the
memberships of their tenants. This cannot be the work of super admins.
On Thursday, September 17, 2015, Dan Clarizio<EMAIL_ADDRESS>wrote:

@bascar https://github.com/bascar as long as you realize that without
access to groups and/or users, the tenant admin can't put any users into
his tenant, then I guess we can go with this. The ONLY one then that can do
that will be super_admin. If we need tenant admins to be able to fill out
their tenant groups/users, they will need such access. Let me know if you
want this else I'll merge it as is. Thx, Dan
—
Reply to this email directly or view it on GitHub
https://github.com/ManageIQ/manageiq/pull/4327#issuecomment-141248870.

--
*Brad Ascar *
Red Hat, Inc.
Field Product Manager - CloudForms | http://www.redhat.com/cloudforms
<EMAIL_ADDRESS>|<PHONE_NUMBER> | Cell<PHONE_NUMBER>

@dclarizio @bascar What is the status of this PR?


setup new testrunner components

This will setup required components when executing tests.
Next step: invoke the correct test runner based on compatibility

Closed in favor of #13788


Use abapGit to Transform ABAP Source Code to the Cloud

Tutorial URL: https://developers.sap.com/tutorials/abap-environment-abapgit.html
The questionnaire in the last step has the wrong answer: I need a Github user, not a Google account, to create a new Git repository.

@mervey45 could you please check this issue?

@thecodester This issue is fixed, we can close it.


Remove the net45 framework dependencies and bumped the package version.

This is a fix to the keyvault package for the unnecessary framework references to net45.

@markcowl, I tested the package in http://azuresdkci.cloudapp.net/view/2-.NET SDK/job/sdk-for-net-sign/1157/artifact/ and looks good. Can you please merge?


Fixes failure to load first installed web extension on desktop

This PR fixes #173779.
See the issue for more details, but to repro basically:

Install VS Code and launch (or launch with a clean profile). This should include no Web Extensions by default, so the WebWorker host won't be started. https://code.visualstudio.com/api/extension-guides/web-extensions.
Install a Web Extension which tries to register a debug provider. (You can use my simple one in the marketplace with id billti.qsx). You'll want a file open which activates the extension (e.g. a *.qsx file for my extension).
Note the exception/error related to registering the debug adapter. (At this point the 'activate' call has failed, so various other programatic features of the extension are broken).
Restart VS Code and note there are no errors, and the extension works fine. (e.g. try any of the commands in the palette with the string 'QSX').
You can also launch VS Code for the Web and install the same extension and observe it works fine.
Build this PR and repeat and observe the issue is addressed.

There's probably a more correct, but more involved way to fix this, but this was the simplest fix I could find. Happy to update the PR with any feedback.
The underlying issue appears to be that by default on a clean desktop install of VS Code, there is no extension it comes with that uses a WebWorker host, thus that host is not running by default. (This explains also why the issue doesn't repo on VS Code for Web, where that host is always used from some extensions).
The issues stems from the use of the CachedExtensionScanner in the getInitData call in the NativeExtensionService, where the cached list of extensions is populated before the extension is installed, but is then used to build the list of extensions to load in the new host (thus the newly installed extension is missing from the list, even though it's the reason the new host is being started!).
This then causes the extension to be missing from the 'extensionPaths', which causes the require interceptor to return the NullExtensionDescription instead of the actual extension (due to the line at https://github.com/microsoft/vscode/blob/main/src/vs/workbench/api/common/extHostRequireInterceptor.ts#L167 returning undefined. This appears to be harmless for many operations, but on the calls to registerDebugAdapterDescriptorFactory it actually checks the extension against the languageId the debug adapter is being registered for, and throws an exception at https://github.com/microsoft/vscode/blob/main/src/vs/workbench/api/common/extHostDebugService.ts#L330.
A more 'correct' fix may be to somehow incorporate the newly added extensions into that returned by the cached list by wiring the 'delta' through, or to fully refresh/replace the CachedExtensionScanner when the extension is installed (or not use a cached list at all).
Happy to rework the PR with guidance. Thanks!

Minor updates which should be a better approach (cache is marked dirty on extension changes and repopulates on next request).

(Sorry for the noise with the additional commits. I'm done now (pending feedback)).

p.s. As part of finding/fixing this issue, I ended up wiring in ILogService to a few providers that didn't already have it so I could trace execution/state (e.g. ExtHostDebugService, ExtensionDescriptionRegistry, etc.). Happy to open a separate PR if you think that would be useful. (I wanted to avoid making this PR too noisy). Let me know.

Ping @sandy081 @alexdima: This has been sitting over a week now. Should I keep updating it with main, or wait until someone looks at it. Would love to get this in. It's an easy repro and a pretty straight forward fix. Thanks.

@billti I will look into this next week. Currently we are winding up current milestone.

Thanks @sandy081 . I'm trying to merge in main again now (there are some conflicts) and the commit keeps failing with the below new issue:
[12:38:51] /Users/billti/src/vscode/src/vs/workbench/services/extensions/electron-sandbox/nativeExtensionService.ts: line 185, col 5, Error - Parsing error: Identifier expected. 'const' is a reserved word that cannot be used here.

1 problem

Hygiene failed with 1 errors. Check 'build / gulpfile.hygiene.js'.

This line is the cause: https://github.com/microsoft/vscode/blob/main/src/vs/workbench/services/extensions/electron-sandbox/nativeExtensionService.ts#L157
I've re-run 'yarn' since pulling and everything appears to be up to date. I can't find any issues discussing similar problems. Any suggestions? Thanks.

Looks like there was quite a bit of refactoring in this space! I just pull main and verified the problem still exists. I then merged and updated my branch for the conflicts and verifies the fix still works.
I looked over some of the recent changes to this area and I believe the fix is still correct. Again, happy to update with guidance if there is a better approach. Thanks!

I just build your update locally and tested with VS Code desktop and browser and works great. Thanks @alexdima !


How ot disable buffers in tabline

Hi.
I am preferring to work with tabs instead of buffers. How to disable displaying buffers and tabs together in tabline?
My config:
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#show_buffers = 0
let g:airline#extensions#tabline#show_tabs = 1

Does that work?
let g:airline#extensions#tabline#enabled = 0

Are you kidding?
I don't want to disable airline completely.

Please be kind. I don't see the problem, if the tabline additionally also displays the buffers.

I am kind ;-)
This is a big problem. Try to open 10 files. Tabline has limited space, what the sense to waste space for useless info? Many peoples, not only me, don't use buffers at all. Second reason - right tabs position, this is completely differs from all other software (browsers, etc...). New era in design of interfaces? ;-)

First of all, you are always using buffers in Vim. Second of all, I like the new design, but if you don't, feel free to open a PR.

Listen, I am using vim about 10 years. I know what is buffers.
Airline - is not a plugin for displaying buffers list.
Why I should make PR? I don't have time for this now.
If you make some significant changes to the public software - you should make this features optional.
I already contributed to airline in the past, and my changes was fully customizable.
Please, respect other users and their opinions.

I know what is buffers.

Then be precise in what you say and don't make yourself sound, as you don't know.

Please, respect other users and their opinions.

I'll do, if feedback is respectful and constructive. Your attitude isn't helping much.

At the risk of inflaming this conversation, I would also like to request a way to revert to the old layout and behavior of the tabline.  Having the tabline list on the far right of the screen is very off-putting, and grinds against the way that the UI in vim and most other programs conventionally lays out tabs.  Moreover, having the live bufferline in place on the left isn't helpful for me, as when I am using tabs I tend not to bury buffers.  And, when I work with hidden buffers, I don't use tabs, etc. etc.
I really appreciate the work that as been put into airline, and I understand that regressing this feature is a hassle.  However, it is hugely disruptive for me and (it looks like) others.

You are really don't see the problem here?

Right tab position is not intuitive. Why right? Let's place tabs list in the center of the screen, maybe somebody will like this;
What I should do, if I don't need to see buffers list all time or I don't need buffers list at all, because I am not using buffers - based navigation? Remove airline?
Why you are impose your design experiments to others?
All community (including me) are appreciate your work, but please, make this feature switchable;

i half-expected a reaction like this, which is why i merged it on the weekend :wink:
there's an easy fix here -- just flip the UI; show the tabs on the left and show the splits on the right.
once we do that, the remaining question is whether the right side should default to the label "tabs", as it was before, or default to showing the splits in the buffer.

please try the latest commit and see if it's acceptable.  if you find that the default behavior with the splits on the right is too intrusive i'll flip switch and make the default false.

Looks great, thanks for the quick fix!  I went ahead and disabled the splits pane on the right by adding this into config:
let g:airline#extensions#tabline#show_splits = 0

let g:airline#extensions#tabline#show_splits = 0
this option is missing in help.

Some themes were broken after #952.  More details at #1046 and vim-airline/vim-airline-themes#16.

Hi,
Will take care of the missing documentation.

It looks like having airline automatically set guioptions-=e and then force
the tabline to stay visible is causing some issues in my MacVim. In the
past, I had manually set go=e and had showtabline=1 set too. The new
airline rev was forcing the gui tab to appear, regardless, which looked
crazy. I've sorted the problem by setting let
g:airline#extensions#tabline#enabled = 0 in my gui-specfic config, but it
took a bit of digging to sort out what was going on.

What do you suggest?

Similarly, I'm not sure how to disable the airline tabline extension in
windows where only a single tab is open. The old setting was
g:airline#extensions#tabline#tab_min_count, but that doesn't seem to work
any longer.

Will look into this.

What do you suggest?

Well, I can see a couple of options.  Ideally, whether to have the console-style tabline would be a configurable item,  and airline wouldn't by default force instances of gvim to use console-style tabs.  (This is a recent change I think?  The overall behavior is certainly new, though maybe something else is causing it.)  I understand that is a hassle, though, so the lowest-effort fix would be to clearly document what is happening and how to adjust it (e.g., similar to my fix above) in the help doc.  I looked through the help and didn't see anything, and only found the solution for my problem after trolling through the recent commit diffs.

Will look into this.

Thanks!

@maccius the console style tabs in GUI has been there since the beginning because the it wouldn't work otherwise.  the fact that you're seeing weird things now is more likely due to recent gvim changes.
as for documenting the switch, that can certainly be done (and why this issue is still open).  however, i was hoping for more yes vs no feedback from "tab only" users on the default value before we close this out.

@bling Thanks, I didn't realize.  I will say that I only had an issue in gvim after the #952 merge, and as I said above, adjusting some of the new variables sorted the issue out I haven't updated my MacVim for a few weeks.  I've sorted it regardless, and thanks for responding to the right/left UI so quickly!

Sorry, I seem to be confused. I just updated to the latest airline, but I'm not seeing the combined tab/buffer bar, is this still being figured out? I can't see any docs on how to use it.
I'm glad this got added though! I've been looking forward to it!

@ChrisPenner It should just work. Do you have tabs open?

Update:

Fixed the documentation about show_splits
@maccius I think, you also need let airline#extensions#tabline#show_buffers = 0 or else the tab_min_count setting won't work.
Can you please verify?

@chrisbra Thanks!  That worked perfectly.  I'd actually had that in my .vimrc, but had commented it out and forgot to re-enable it when I was fooling around with the new splits framework.  D'oh.  I appreciate the help in sorting this out!

Hrmm, thanks for taking a moment @chrisbra, I'm on commit 7418df5 but it still doesn't show up.
Here's with no tabs:

Here's with 2 tabs:

Here are my settings, is there something silly that I'm missing?
" Use patched fonts
let g:airline_powerline_fonts = 1

" Enable the list of buffers
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#show_buffers = 1
let g:airline#extensions#tabline#show_tabs = 1

" Show just the filename
let g:airline#extensions#tabline#fnamemod = ':t'

" enable/disable fugitive/lawrencium integration
let g:airline#extensions#branch#enabled = 1

" enable/disable showing a summary of changed hunks under source control.
let g:airline#extensions#hunks#enabled = 1

" enable/disable showing only non-zero hunks.
let g:airline#extensions#hunks#non_zero_only = 1

let g:airline#extensions#whitespace#enabled = 0

first, i like airline but frankly speaking i liked it more in the past w/o showing buffers. i absolutely agree with @zdm. showing buffers in the tab line is a feature killer for me (i am using exclusively vim more than 15 years). it wastes a space and it is confusing in case you have more tabs. i have not found a way how to disable it yet (using gentoo, vim-7.4.1342). please give us a choice to decide if we want/don't want to use that. thank you.

@rpolasek please read the issue you are responding to. It has been fixed

@ChrisPenner That looks correct. Look at your second screenshot. At the left you see the tabs highlighted, at the right, the opened buffers in that tab.

I think this issue can be closed now.

@chrisbra i do but buffers still show :-( i am able to disable it only with let g:airline#extensions#tabline#enabled = 0 but i want to use tabline so it is not a solution for me. please, tell me what should i set to show only tabs on the right (old behaviour) and not buffers on the left and tabs on the right. thank you.

a typo in my prev. msg - i want to show only tabs on the LEFT (not right)

@rpolasek you should use
let g:airline#extensions#tabline#show_splits = 0

i use it but it don't have the effect i expect :-/
has already been merged that fix to the master branch which i use or not?

yes, fix was merged.

update airline to the latest revision;
my settings:

let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#show_buffers = 0
let g:airline#extensions#tabline#show_splits = 0
let g:airline#extensions#tabline#show_tabs = 1
let g:airline#extensions#tabline#show_tab_nr = 0
let g:airline#extensions#tabline#show_tab_type = 0
let g:airline#extensions#tabline#close_symbol = '×'
let g:airline#extensions#tabline#show_close_button = 0

i have just removed all my airline settings and pasted yours but there are still buffers on the left and tabs on the right, see a screenshot here: https://www.dropbox.com/s/8sfaf2sd6kn8ftw/screenshot.jpg?dl=0

Hmm. I don't know, what is the problem.
I have tabs on the left and buffers are not displayed.
You can try to remove .viminfo.

.viminfo removed but the issue still persists

Are you sure, that you have the latest revision?
$ git describe --tags
v0.7-288-g7418df5

correct?

~/.vim/bundle/airline $ git describe --tags
v0.7-288-g7418df5

Hmm, sorry, I don't know, what's the reason.
We have identical settings.
It should work.

Can you try with a new empty profile?

i have try to remove most of my settings from my .vimrc (all plugins etc.) but i still see the cursed buffers. here is my .vimrc: http://pastebin.ca/3380880
could you try it, please?

i think ctrlspace could be the culprint why it doesn't work for me
https://github.com/szw/vim-ctrlspace.git

I tried your airline config.
It works for me as expected.
Maybe the problem in your plugins.

now it is a question who could fix it - a maintainer of ctrlspace or airline?

If you disable ctrlspace - everything is working?

yes

ping @sappo Perhaps he knows a solution?

@rpolasek the ctrlspace integration into the tabline is completely independent and currently not very configurable. You can change the buffers and tabs label to safe some space but that's it. A quick fix maybe to add a switch to disable ctrlspace tabline and fallback to default airline tabline. Which should work fine if you only use tabs but behaves miserable at showing ctrlspace buffers.

@sappo thanks for you message. it seems i will have to find ctrlspace replacement...

@rpolasek from this thread I'm not sure what your exact problem is? Could you please open a new issue and describe it. Thanks!

@bling If you're still looking for feedback, I like the old behavior as the default. While I've been playing with the new style for the last few minutes, I've begun to appreciate it more, but it was a bit jarring when it first showed up as the default. I had recently turned off ctrlspace to remove this behavior and spent time trying to figure out why it was happening again.
The setting name to turn it off was a little unclear and it sounded similar to the buffer_nr_show setting. Maybe something like g:airline#extensions#tabline#show_splits_on_right or g:airline#extensions#tabline#show_splits_on_tabline would be clearer. If people were upset with the change though, maybe it's not a good idea to change that now unless you were making the default the old style.
As I said, I'm beginning to like it more over the last few minutes but there is one thing missing. When showing buffers only on the tabline, the current active buffer was always made visible. I have an old change to support the same behavior on the tabline but never got around to submitting a PR for it. With the new behavior of having both tabs and buffers on display, it could run out of room quicker and this behavior might help. It doesn't seem to keep the active buffer visible now with the new view. Should I create a new issue for this?

I am kind ;-)
This is a big problem. Try to open 10 files. Tabline has limited space, what the sense to waste space for useless info? Many peoples, not only me, don't use buffers at all. Second reason - right tabs position, this is completely differs from all other software (browsers, etc...). New era in design of interfaces? ;-)

lets all look back to this dumbass


Monika pydaal new2

IntelDaal included to the project only for calculating Linear Regression.

I have created prebuild of IntelDaal only for Linux-x86_64 https://s3.amazonaws.com/intel-daal/daal-linux_x86_64.tar.gz
For testing, please run in virtual env. h2o4gpu/scripts/daal/daal_preinstalled_packages.sh
The script will set LD_LIBRARY_PATH locally

@mdymczyk : #406 and #407 can be closed and reviewed only #408.
@mdymczyk : I am working on points 1,2,3. Thank you.

The latest is still complaining about some daal stuff:

>       self.model_daal = DaalRegression(fit_intercept=fit_intercept,

                                               normalize=normalize)

E       NameError: name 'DaalRegression' is not defined

I fixed the conflict in dockerfile-build.

Hi Monika.  Can you resolve the Makefile conflicts?  We should be able to still compile for cpu without intel daal, so please keep both options.  Thanks!

Hey @stjoern looking good! As Jon mentioned, can we resolve the Makefile conflicts with master and squash this PR into one commit? I'll do a proper review after that but so far looks ok. Also can you paste some benchmarks (think you mentioned you did them already) here? Thanks!

@stjoern went through the code, all looks good! 2 more things from my side and I think we can merge if @pseudotensor and @navdeep-G don't have any objections:

need some tests with actual assertions - I think it would make sense to run the same test data (can be something basic) with SKLearn, 4gpu and daal backends and check if we are getting similar results. You can ask @khevn for ideas, he can come up with some basic scenarios for you, he's good at that.

add a benchmark graph here and somewhere in the repo (maybe a new folder with benchmarks?) - saying on what data it was ran and using which code version.

I am currently working on SVD, where I am preparing jupyter workbook, maybe I could add new jupyter to linear regression too; and added scaling (min-max, zscoring - default zscoring for Linear Regression).
@mdymczyk : I've added so far only one test, pls. see test_fit_linear_regression_daal_vs_sklearn

@stjoern yes jupyter notebook is a good start!
I saw the test. The issue I was addressing above is that is has no assertions (I think some of our other tests have/had same problems so we'll have to fix that). It only checks for run time but we also need to know whether our solvers also result in proper predictions (using assert etc). Something like they have for sklearn https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/linear_model/tests/test_base.py
Ideally at least for basic cases results for SKLearn, H2O4GPU and DAAL should be the same.

@stjoern the tests look good! We still need L1/L2 regularizations, right?

@mdymczyk we have already implemented L2 together with test cases.

@stjoern ok lets discuss tomorrow during standup how hard would it be to implement L1. If it's a major effort then we can make an issue for it and do it in the future. We'd have to handle L1 case should the user try to run L1 with DAAL backend appropriately - either throw an exception that it's not supported or log a warning and fallback to Scikit.
Also one thing I'm worried about is whether this DAAL enabled build would be generic enough - could you consult with Tom K on which platforms we need DAI and h2o4gpu to run? I know they are working on some obscure platforms and if we merge stuff which makes those fail we'll have problems :-)


NLogViewerTarget  in XSD is incomplete

XSD for NLogViewerTarget  is missing some properties of https://github.com/NLog/NLog/wiki/Network-target
As NLogViewerTarget inherits from the NetworkTarget, NLogViewerTarget has all the NetworkTarget properties. This will result in XML validation errors now.
from #2145
related https://github.com/NLog/NLog/issues/2148

Checked, is OK


Upgrade & Convert to TS

We had many templates that were in pretty old states for TypeScript. This goes through a majority of them and updates their TSConfigs to be inline with most up to date TS configurations and Wrangler.
Additionally, many templates were written in TypeScript and had many errors in their tests and a few in their workers code (caused by updates to Wrangler & the ecosystem) converting them to TypeScript helps to fix them and helps future maintaining when updating or making changes to the templates.
Part of #3441
Reviewer is to perform the following, as applicable:

Checked for inclusion of relevant tests
Checked for inclusion of a relevant changeset
Checked for creation of associated docs updates
Manually pulled down the changes and spot-tested

I am reduce the scope of this, by remove adding templates to workspaces, that really made this look bigger than it needs to be right now.


Dump stats on block sizes

For example, total number of blocks, counts of each block type, etc. Useful for determining what setting impact block size decision. Could be added to encoder or analyzer.

Fixed in commit 166d79f0da71c757e6e5eeb2fdc714102e9b2c2e


[DOC] Finding language analyzers

What do you want to do?

[X ] Request a change to existing documentation

Tell us about your request. Provide a summary of the request and all versions that are affected.
1.1 doc lists the analyzers for Japanese (analysis-kuromoji), Korean (analysis-nori), Chinese (analysis-smartcn), and Polish (analysis-stempel) in OpenSearch plugin installation but there is no way to find them by the language name. (I did various web searches and then looked at the source code to figure out that we're using nori and not seunjeon, as mentioned in a blog for AES/AOSS in 2021; and in the AWS documentation for OpenSearch.
What's more, these languages are not listed in Convert text with analyzers, leaving the impression that we don't support them.
Also, the procedure for using the analyzers isn't documented. After installing the appropriate plugin, do you say analyzer=korean or analyzer=nori or analyzer=analysis-nori?
Minor point: the language names should be capitalized.
What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

@macrakis: We've documented this for Query DSL here: https://opensearch.org/docs/latest/opensearch/query-dsl/text-analyzers/#language-analyzer.
Are you hoping to have the same change implemented in 1.1 version of OpenSearch?

@macrakis , currently, we are only maintaining the documentation for versions of OpenSearch 1.3 and later.


[QUESTION] UTC Time default

Hi All,
Is there a possibility to set the default time zone as UTC time, for every DateTime field?
In mongoDB I use DateTimeSerializer.
Thanks for any feedback.
Regards
Krzysztof

Settings LiteDatabase:UtcDate


Update CONTRIBUTING.md

add request to be added as collaborator

This looks great @fridlind ! Merging!


Specify Lambda IAM role

Do you want to request a feature or report a bug?
Feature.
What is the current behavior?
A new IAM role is generated for each lambda function.
What is the expected behavior?
Allowed to pass the name of an IAM role to reuse in lambda functions.
Which versions of Amplify CLI, and which  OS are affected by this issue? Did this work in previous versions?
0.1.14

@jarrettj You can still modify the Lambda Cloudformation template and add your own role if needed and that role would be used as the execution role.
Also, if this helps - today we released an updated flow as a part of the functions category to pass resource identifiers like the cognito userpool ID  or graphql ID (managed and generated by the Amplify CLI) to a lambda function as environment variables and also populate the corresponding lambda execution role to access these resources. You can install the latest version of the CLI and go through the amplify update function flow to update your existing functions to access your Amplify generated resources in the project.

If you manually create a role, you would lose all the auto-generated stuff that amplify cli does to the role. And that's more work than having a proliferation of roles in the Console I guess. I choose the lesser evil!


Fix WebOS once again

WebOS doesnt  have support for numeric-separators
https://v8.dev/features/numeric-separators
Fixes #101
Tested on latest chrome, WebOS 5 emulator and TV

Great! You did it! Thank you @NeroPcStation.
Jellyscrub is now working flawlessly in my webOS client.
I can't thank you enough for figuring this out. This needs to be in the main branch!


bug(types): Typing files are missing for tseslint.configs.strictTypeChecked in FlatConfig

Describe the bug
I'm trying to use ESLint's new FlatConfig and typescript-eslint's tseslint.configs.strictTypeChecked enabled for stricter type checking and linting. However, ESLint reports the lint error below for eslint-plugin-perfectionist due to missing types from the package:
  20:3   error  Unsafe argument of type `any` assigned to a parameter of type `ConfigWithExtends`  @typescript-eslint/no-unsafe-argument

I was quite surprised that a project that is entirely written in TypeScript chose to omit type files completely. It'd be great if type files could be added so that ESLint read the typings of the package correctly without the need to add additional rule to turn off some rules in eslint.config.*js for all the users.
Code example

Go to https://stackblitz.com/edit/vitest-dev-vitest-c5wksh?file=eslint.config.mjs
Wait for dependencies to be installed and you will see linting errors
If Step 2 fails, you can manually run pnpm install && pnpm lint

ESLint version
9.1.1
ESLint Plugin Perfectionist version
2.10.0
Additional comments
{
"@eslint/eslintrc": "^3.0.2",
"@eslint/js": "^9.1.1",
"eslint": "^9.1.1",
"eslint-plugin-perfectionist": "^2.10.0",
"typescript-eslint": "^7.7.1"
}
Validations

[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.

Thank you for your question! We plan to add type support in the next major version.

Thank you for your issue!
The types were added in 2b63ab558f431a33fbdfb103c3279ec34011d135 and released in v3.0.0.
If you'd like, you can support the release with a retweet:
https://x.com/azat_io_en/status/1815367279191761054


Fixed tumblr api key selection and video downloading

Category
This change is exactly one of the following (please change [ ] to [x]) to indicate which:

[X] a bug fix (Fix #644 Fix #615)
[ ] a new Ripper
[ ] a refactoring
[ ] a style change/fix

Description
I replaced a bugged string replace that was changing all https links to httpss and added a func to pick a random api key
Testing
Required verification:

[ ] I've verified that there are no regressions in mvn test (there are no new failures or errors).
[ ] I've verified that this change works as intended.

[ ] Downloads all relevant content.
[ ] Downloads content from multiple pages (as necessary or appropriate).
[ ] Saves content at reasonable file names (e.g. page titles or content IDs) to help easily browse downloaded content.

[ ] I've verified that this change did not break existing functionality (especially in the Ripper I modified).

Optional but recommended:

[ ] I've added a unit test to cover my change.

Coverage decreased (-0.02%) to 36.389% when pulling 9a8888d445b45216e7442c4f9bad79e1a660054f on cyian-1756:tumblrFix into 2ecffc349768e25d0624af303457b407f03d0938 on RipMeApp:master.


MOD: add stats command for fatcache

hi @manjuraj
I'm sorry for the pr is so huge, so will take your time to review it.

supports stats, stats slabs, stats settings
memory leak is tested

related issue: https://github.com/twitter/fatcache/issues/28

U


[Documentation] Sample code of addJavaScriptChannel of webview_flutter is incorrect.

The documentation shows this sample code but this doesn't compile.
final WebViewController controller = WebViewController();
controller.addJavaScriptChannel(
  name: 'Print',
  onMessageReceived: (JavascriptMessage message) {
    print(message.message);
  },
);

Here's the correct version.
final WebViewController controller = WebViewController();
controller.addJavaScriptChannel(
  'Print', //should be a positional parameter
  onMessageReceived: (JavaScriptMessage message) { //Java"S"criptMessage (not Java"s"criptMessage)
    print(message.message);
  },
);

Thanks for pointing this out, I do see that the plugin example is using the correct sample over here
https://github.com/flutter/packages/blob/3b602e77e69aac91dbbf2e18260fb70d3a42df23/packages/webview_flutter/webview_flutter/example/lib/main.dart#L144-L151

I've PR'ed an update, do checkout if may @danagbemava-nc

Fixed by https://github.com/flutter/packages/pull/4727


changed ? to * as spammers may do skin (whitespace*3) care

This change only gives one additional TP detection.
skin ?care in titles, usernames, bodies
skin *care in titles, usernames, bodies
In general, it's preferred to use *+, if what you're repeating can't match the next thing in the regex. The *+ is possessive, so the regex engine won't try backtracking to match. It's not that much of an issue in a simple regex like this one (probably almost no difference), but it can make a significant difference in more complex regexes when you hit some text which happens to be a pathological case for the regex.


remove SSH to Controller for job status

@bertsky There are some errors in CI. Sounds like easy to solve.

There are some errors in CI. Sounds like easy to solve.

At last! Turned out not so easy to satisfy mypy.
Alas, your #42 will have to be updated. (But I think it's worth the change – reduced complexity.)


Apply draggable to deeply nested custom component ?

Thanks for the awesome library, however, I cannot get it to work on my custom component that is deeply nested within other custom components, all of which are created by mapping arrays. Right now, wrapping the returned div with   in the render method isn't helping, though no errors are being thrown. The dragging only needs to be happen only in the child component.  Can I have some pointers please ? Thanks.

Nested draggable items work fine, it was an issue with the z-index which was preventing the drag from happening.


speedup suggestions, fixes #254

Pull request for the changes proposed in #254. Slight variation since the suggestions there would not lazy load during scrolling but only after it.

@tuupola When should we expect it to be released? It is a huge improvement.

Still needs to test a bit.

@tuupola Can update status of tests?


WIP: Add context argument to PostingsForMatchers and SortedPostings

Prometheus PR https://github.com/prometheus/prometheus/pull/12359 adds context argument to tsdb.IndexReader.PostingsForMatchers, I'm porting that change to mimir-prometheus. I'm also adding context to the SortedPostings method, since it needs it too.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: aknuds1:x: alanprotYou have signed the CLA already but the status is still pending? Let us recheck it.


Upgrade pdfjs to version 3.x

Are there any plans to upgrade to version 3.10.111 of pdfjs at the moment ?

hope upgrade to version 3.10.111 of pdfjs


test: add integration tests for use

Issue #, if available:
#143
Description of changes:
This pull request adds integration tests for use command.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for your review.

check that we have two options to specify table name

I infer that you mean that we should check the case where the --table option is not used and the value from config.yml is used. If my understanding is not correct, please let me know.
I will implement tests based on what I understand above.

check stored config file in .dynein dir

I would like to implement this check after #218 is merged because this change potentially conflicts with #218. Thus, I appreciate it if you could review #218 as well.

I mean we can specify table name with two patterns(options or args). In this PR, the args pattern has covered but not the options.
https://github.com/awslabs/dynein/blob/54d31f99e16a8da340f28023d2b344ae98adca8c/src/app.rs#L575

@ryota-sakamoto I have added the tests for both cases. Could you please check them?


8424 use attestations v2

PR Description
Rebased on top of #8448
Add a hidden option --Xattestations-v2-enabled to enable the new PostAttestationsV2 API
Fixed Issue(s)

#8424
Documentation

[x] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[x] I thought about adding a changelog entry, and added one if I deemed necessary.

Outdated, will raise a new PR onces the APIs are merged


Remove broken test.

It depended on a bug in the oauth library. I guess they fixed it.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Pull Req: Script to run more robust by continuing on specific errors that affect only individual users.

Right now, the script aborts sync whenever an error, for instance upon user creation is discovered. This leads to potentially many new users not being added until the cause is discovered.
I am suggesting to let the script continue for specific errors for which the cause can be clearly led to misconfiguration of single accounts in the AD. In this example, the script continues to run whenever an error occurs that hints that the user's email address is already in use (due to two accounts having the same email in the AD). The creation of this individual user is skipped and the script continues with the next user. The script still aborts for every other error (I might add other errors I stumble upon later).

I think this condition will be situation specific, and not widespread enough to relax for general purpose. Such behaviour should be an option, and off as standard.
A user not being created due to their email address being taken by someone else will be a serious problem for some, finding that they can't sign in because someone else has (possibly wrongly) had their email address. This is going to inappropriately flag up invalid logins, but then again, if the email address exists more than once why should the first instance of it through an LDAP search iteration implicitly take priority over any other iterations. -- On balance it would be more unusual in a directory for multiple user objects representing real people to share the same email address.

not being added until the cause is discovered

On the contrary I would suggest that the script immediately and gracefully stopping with a non-zero exit code would be more of an attention grabber than glossing over it.
If a lot of users are missing the administrator is either going to notice the big shortfall in the user count figure, or they will get significantly more complaints than say just one person complaining, thus the administrator is going to bother checking out the cause at a higher priority. The reason would be an immediate indication to correct their directory or exclude a person, along with running the script again interactively to ensure nobody else requires attention.
As this scales to directories with hundreds of users and beyond glossing over an error may not be seen until the particular person effected complains and the administrator searches through the potentially very long logs to find out why. After all they don't necessarily know the cause to be duplicate email address, only that a particular person can't login because "some reasons". The script exiting with a non-zero error code would either be noticed by the person running it interactively (as the error message is going to be at/near the end of their console), or be picked up by a task scheduler mechanism as a failed run (such as a failed CRON dispatching an email to the runner's mailbox or nominated email address).

Yep, I’m catching your line of thought here, and would be fully in line with this being a ‘hidden’ tweak or an optional setting. For our specific use case, dual email use is common, but I’ll look into your idea of a cron job sending an email when the script encounters an error. Do you happen to have that running and a working cron template for this? How do you avoid spamming the admins?
Von: Adam Reece<EMAIL_ADDRESS>Gesendet: Dienstag, 21. Juli 2020 19:44
An: Adambean/gitlab-ce-ldap-sync<EMAIL_ADDRESS>Cc: BOW-el<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Betreff: Re: [Adambean/gitlab-ce-ldap-sync] Pull Req: Script to run more robust by continuing on specific errors that affect only individual users. (#20)
I think this condition will be situation specific, and not widespread enough to relax for general purpose. Such behaviour should be an option, and off as standard.
A user not being created due to their email address being taken by someone else will be a serious problem for some, finding that they can't sign in because someone else has (possibly wrongly) had their email address. This is going to inappropriately flag up invalid logins, but then again, if the email address exists more than once why should the first instance of it through an LDAP search iteration implicitly take priority over any other iterations. -- On balance it would be more unusual in a directory for multiple user objects representing real people to share the same email address.
not being added until the cause is discovered
On the contrary I would suggest that the script immediately and gracefully stopping with a non-zero exit code would be more of an attention grabber than glossing over it.
If a lot of users are missing the administrator is either going to notice the big shortfall in the user count figure, or they will get significantly more complaints than say just one person complaining, thus the administrator is going to bother checking out the cause at a higher priority. The reason would be an immediate indication to correct their directory or exclude a person, along with running the script again interactively to ensure nobody else requires attention.
As this scales to directories with hundreds of users and beyond glossing over an error may not be seen until the particular person effected complains and the administrator searches through the potentially very long logs to find out why. After all they don't necessarily know the cause to be duplicate email address, only that a particular person can't login because "some reasons". The script exiting with a non-zero error code would either be noticed by the person running it interactively (as the error message is going to be at/near the end of their console), or be picked up by a task scheduler mechanism as a failed run (such as a failed CRON dispatching an email to the runner's mailbox or nominated email address).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/Adambean/gitlab-ce-ldap-sync/pull/20#issuecomment-662008076 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AMG37AK7342QQI5C4AUZ5BTR4XHWBANCNFSM4PDUPOHA .  https://github.com/notifications/beacon/AMG37AKEGDH6PVTZH5STHSTR4XHWBA5CNFSM4PDUPOHKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOE52XCDA.gif

but I’ll look into your idea of a cron job sending an email when the script encounters an error

You don't need to do this. It's a built in mechanism of the Linux CRON application to dispatch an email for any textual output, and something a Linux user would configure on a system account basis. E.g.
SHELL=/bin/bash
<EMAIL_ADDRESS># Custom email address if the account's own mailbox isn't wanted

* * * * * /usr/bin/php ~/gitlab-ldap-sync/bin/console ldap:sync -vv # This sends everything
* * * * * /usr/bin/php ~/gitlab-ldap-sync/bin/console ldap:sync -vv >/dev/null # This sends errors only
* * * * * /usr/bin/php ~/gitlab-ldap-sync/bin/console ldap:sync -vv >/dev/null 2>&1 # This won't send errors either

I think you may have sent your VSCode commit to the wrong issue? That's more a general point than specific to non-atomic operation, though happy to accept VSCode workspace. (This has gone to master.)

I've merged in your change for this issue on the basis that it requires explicit consent, which should satisfy us meeting in the middle.
To opt in to this behaviour you just need to include command option --continueOnFail.

Jep, that was by mistake, thought I had pushed to my own repo without creating a request. However, glad this works :)

I think you may have sent your VSCode commit to the wrong issue? That's more a general point than specific to non-atomic operation, though happy to accept VSCode workspace. (This has gone to master.)
Edit: Could just be me not being used to how Github amalgamates an individuals concurrent changes to a single location.

Jep, that was by mistake, thought I had pushed to my own repo without creating a request. However, glad this works :)

I've merged in your change for this issue on the basis that it requires explicit consent, which should satisfy us meeting in the middle.
To opt in to this behaviour you just need to include command option --continueOnFail.

perfect, that works for us, thank you for your help!


Change Iterable to Stream in reducing operations

In operators that take an Iterable of values, replace it in API with Stream. This is more Java 8 compliant, and explicitly states the fact, that it is not possible to iterate over the collection twice.

Closed via #188


Upgrade net-http-persistent dependency (#491)

I guess this should have happened a long time ago.

Looks like upgrading requires some changes.

Our test suite has calls to Net::HTTP::Persistent#request_key which is gone in net-http-persistent 3.0.   Seems they were introduced in #258 but I have no idea what the intentions are and how to fix them for 3.0.
@djanowski @drbrain Any advice?

My $0.02 on the tests that are using request_key is that they appear to be testing the internals of Net::HTTP::Persistent. I think the portions of the tests doing those checks can just be removed. I have a commit here with green tests (by just removing the assertions), but it doesn't maintain backwards compatibility.
This dependency is preventing us from upgrading a critical gem and may require us to stop using mechanize if this PR isn't merged.  😞

@agarcher Would mind sending a PR to this branch?

Opened https://github.com/sparklemotion/mechanize/pull/518

@agarcher Thanks!


Undefined name

In notebook: mnist-mlp/mnist_mlp_solution_with_validation.ipynb
print('Test Accuracy of %5s: N/A (no training examples)' % (classes[i]))
The variable classes is undefined. I think you mean str(i).
However, the line is never executed because all categories have samples.

Though we are a little late to respond, we encourage such user-specific issues to be raised on the Knowledge hub, so that our experienced mentors can chime-in and new students can also learn from the discussion thread.
Thank you