Found via `codespell -q 3 -L optio,promisses,usera`
This commit is contained in:
luz paz 2021-07-22 09:23:21 -04:00
Родитель e527c067d4
Коммит ad97cdf444
18 изменённых файлов: 31 добавлений и 31 удалений

Просмотреть файл

@ -6,7 +6,7 @@ Thank you for reading this! Speckle's a rather wide network of parts that depend
> **Speckle** is a quite large ecosystem of moving parts. Any changes may have unintended effects, that can cause problems quickly for many people (and processes) that rely on Speckle.
This means that what might look like a simple quick change in one repo may have a big hidden cost that propagates around other parts of the project. We're all here to help each other, and this guide is meant to help you get started and promote a framework that can untangle all these dependecies through discussion!
This means that what might look like a simple quick change in one repo may have a big hidden cost that propagates around other parts of the project. We're all here to help each other, and this guide is meant to help you get started and promote a framework that can untangle all these dependencies through discussion!
## Bugs & Issues 🐞
@ -45,7 +45,7 @@ Changes that are cosmetic in nature and do not add anything substantial to the s
Why? However trivial the changes might seem, there might be subtle reasons for the original code to be as it is. Furthermore, there are a lot of potential hidden costs (that even maintainers themselves are not aware of fully!) and they eat up review time unncessarily.
> **Examples**: modifying the colour of an UI element in one client may have a big hidden cost and need propagation in several other clients that implement a similar ui element. Changing the default port or specifiying `localhost` instead of `0.0.0.0` breaks cross-vm debugging and developing.
> **Examples**: modifying the colour of an UI element in one client may have a big hidden cost and need propagation in several other clients that implement a similar ui element. Changing the default port or specifying `localhost` instead of `0.0.0.0` breaks cross-vm debugging and developing.
## Wrap up

Просмотреть файл

@ -123,7 +123,7 @@
<b>Connectors</b>
are plugins for design and analysis software, they let you
<b>exchange</b>
geometry and BIM data dirctly from the tools you use.
geometry and BIM data directly from the tools you use.
</p>
<p>
Install our connectors and you'll instantly be able to
@ -194,8 +194,8 @@
<p>
Commits can also be organized in
<b>branches,</b>
for instace, to have multiple design options or to store data by discipline. The
dafault branch is called
for instance, to have multiple design options or to store data by discipline. The
default branch is called
<i>main</i>
.
</p>

Просмотреть файл

@ -42,7 +42,7 @@
v-model="description"
label="Description"
persistent-hint
hint="A short description of your applicaiton."
hint="A short description of your application."
></v-textarea>
<v-card-actions>
<v-spacer></v-spacer>

Просмотреть файл

@ -10,7 +10,7 @@ Comprehensive developer and user documentation can be found in our:
## Getting started
This is a small utility class that helps you stream an object and all its sub-components from the Speckle Server API. It is inteded to be used in contexts where you want to "download" the whole object, or iteratively traverse its whole tree.
This is a small utility class that helps you stream an object and all its sub-components from the Speckle Server API. It is intended to be used in contexts where you want to "download" the whole object, or iteratively traverse its whole tree.
Here's a sample way on how to use it, pfilfered from the [3d viewer package](../viewer):

Просмотреть файл

@ -28,7 +28,7 @@ let graphqlServer
/**
* Initialises the express application together with the graphql server middleware.
* @return {[type]} an express applicaiton and the graphql server
* @return {[type]} an express application and the graphql server
*/
exports.init = async ( ) => {
const app = express( )

Просмотреть файл

@ -45,7 +45,7 @@ module.exports = async ( app, session, sessionStorage, finalizeAuth ) => {
existingUser = await getUserByEmail( { email: user.email } )
// if there is an existing user, go ahead and log them in (regardless of
// wether the server is invite only or not).
// whether the server is invite only or not).
if ( existingUser ) {
let myUser = await findOrCreateUser( { user: user, rawProfile: profile._raw } )
return done( null, myUser )

Просмотреть файл

@ -42,7 +42,7 @@ module.exports = async ( app, session, sessionStorage, finalizeAuth ) => {
existingUser = await getUserByEmail( { email: user.email } )
// if there is an existing user, go ahead and log them in (regardless of
// wether the server is invite only or not).
// whether the server is invite only or not).
if ( existingUser ) {
let myUser = await findOrCreateUser( { user: user, rawProfile: profile._raw } )
return done( null, myUser )

Просмотреть файл

@ -161,7 +161,7 @@ describe( 'Apps @apps', ( ) => {
let usedAccessCode = await createAuthorizationCode( { appId: myTestApp.id, userId: actor.id, challenge } )
let apiTokenResponse = await createAppTokenFromAccessCode( { appId: myTestApp.id, appSecret: myTestApp.secret, accessCode: usedAccessCode, challenge: challenge } )
// We now have one unused acces code, an api token and a refresh token.
// We now have one unused access code, an api token and a refresh token.
// Proceed to update the app:
const res = await updateApp( { app: { name: 'updated test application', id: myTestApp.id, scopes: [ 'streams:write', 'users:read' ] } } )

Просмотреть файл

@ -17,7 +17,7 @@ type Stream {
description: String
isPublic: Boolean!
"""
Your role for this stream. `null` if request is not authenticated, or the stream is not explictely shared with you.
Your role for this stream. `null` if request is not authenticated, or the stream is not explicitly shared with you.
"""
role: String
createdAt: DateTime!

Просмотреть файл

@ -37,7 +37,7 @@ exports.up = async knex => {
// Roles.
// Roles keep track of their name and the target resource they are applied to.
// The target resource must be a table name.
// The heigher the weight, the bigger the permissions.
// The higher the weight, the bigger the permissions.
await knex.schema.createTable( 'user_roles', table => {
table.string( 'name', 256 ).primary( )
table.string( 'description', 256 ).notNullable( )

Просмотреть файл

@ -3,7 +3,7 @@
// Conventions:
// "weight: 1000" => resource owner
// "weight: 100" => resource viewer / basic user
// Anything in between 100 and 1000 can be used for escalating priviliges.
// Anything in between 100 and 1000 can be used for escalating privileges.
module.exports = [
/**

Просмотреть файл

@ -87,7 +87,7 @@ module.exports = {
let closureBatchSize = 1000
let objectsBatchSize = 500
// step 1: insert objecs
// step 1: insert objects
if ( objsToInsert.length > 0 ) {
let batches = chunk( objsToInsert, objectsBatchSize )
for ( const batch of batches ) {
@ -270,7 +270,7 @@ module.exports = {
cursor = JSON.parse( Buffer.from( cursor, 'base64' ).toString( 'binary' ) )
}
// Flag that keeps track of wether we select the whole "data" part of an object or not
// Flag that keeps track of whether we select the whole "data" part of an object or not
let fullObjectSelect = false
if ( Array.isArray( select ) ) {
// if we order by a field that we do not select, select it!
@ -332,7 +332,7 @@ module.exports = {
else whereClause = 'andWhere'
// Note: castType is generated from the statement's value and operators are matched against a whitelist.
// If comparing with strings, the jsonb_path_query(_first) func returns json encoded strings (ie, `bar` is actually `"bar"`), hence we need to add the qoutes manually to the raw provided comparison value.
// If comparing with strings, the jsonb_path_query(_first) func returns json encoded strings (ie, `bar` is actually `"bar"`), hence we need to add the quotes manually to the raw provided comparison value.
nestedWhereQuery[ whereClause ]( knex.raw( `jsonb_path_query_first( data, ? )::${castType} ${statement.operator} ? `, [ '$.' + statement.field, castType === 'text' ? `"${statement.value}"` : statement.value ] ) )
} )
} )
@ -358,7 +358,7 @@ module.exports = {
if ( typeof cursor.value === 'boolean' ) castType = 'boolean'
if ( typeof cursor.value === 'number' ) castType = 'numeric'
// When strings are used inside an order clause, as mentioned above, we need to add qoutes around the comparison value, as the jsonb_path_query funcs return json encoded strings (`{"test":"foo"}` => test is returned as `"foo"`)
// When strings are used inside an order clause, as mentioned above, we need to add quotes around the comparison value, as the jsonb_path_query funcs return json encoded strings (`{"test":"foo"}` => test is returned as `"foo"`)
if ( castType === 'text' )
cursor.value = `"${cursor.value}"`
@ -423,7 +423,7 @@ module.exports = {
cursorObj.lastSeenId = rows[ rows.length - 1 ].id
}
// Cursor objetcs should be client-side opaque, hence we encode them to base64.
// Cursor objects should be client-side opaque, hence we encode them to base64.
let cursorEncoded = Buffer.from( JSON.stringify( cursorObj ), 'binary' ).toString( 'base64' )
return { totalCount, objects: rows, cursor: rows.length === limit ? cursorEncoded : null }
},

Просмотреть файл

@ -305,7 +305,7 @@ describe( 'Objects @core-objects', ( ) => {
} )
it( 'should query childern and sort them by a boolean value ', async ( ) => {
it( 'should query children and sort them by a boolean value ', async ( ) => {
let test = await getObjectChildrenQuery( {
streamId: stream.id,
objectId: parentObjectId,
@ -330,7 +330,7 @@ describe( 'Objects @core-objects', ( ) => {
} )
it( 'should query childern and sort them by a string value ', async ( ) => {
it( 'should query children and sort them by a string value ', async ( ) => {
let limVal = 20
let test = await getObjectChildrenQuery( {
@ -355,13 +355,13 @@ describe( 'Objects @core-objects', ( ) => {
expect( test.objects[ 0 ].data.name ).to.equal( 'mr. 0' )
expect( test.objects[ 1 ].data.name ).to.equal( 'mr. 1' )
expect( test.objects[ 2 ].data.name ).to.equal( 'mr. 10' ) // remeber kids, this is a lexicographical sort
expect( test.objects[ 2 ].data.name ).to.equal( 'mr. 10' ) // remember kids, this is a lexicographical sort
expect( test.objects[ 4 ].data.name ).to.equal( 'mr. 12' )
expect( test2.objects[ 0 ].data.name ).to.equal( 'mr. 13' )
} )
it( 'should query childern and sort them by id by default ', async ( ) => {
it( 'should query children and sort them by id by default ', async ( ) => {
let test = await getObjectChildrenQuery( {
streamId: stream.id,
objectId: parentObjectId,

Просмотреть файл

@ -140,7 +140,7 @@ describe( 'Upload/Download Routes @api-rest', ( ) => {
.attach( 'batch2', Buffer.from( JSON.stringify( objBatches[ 1 ] ), 'utf8' ) )
.attach( 'batch3', Buffer.from( JSON.stringify( objBatches[ 2 ] ), 'utf8' ) )
// TODO: test gziped uploads. They work. Current blocker: cannot set content-type for each part in the 'multipart' request.
// TODO: test gzipped uploads. They work. Current blocker: cannot set content-type for each part in the 'multipart' request.
// .attach( 'batch1', zlib.gzipSync( Buffer.from( JSON.stringify( objBatches[ 0 ] ) ), 'utf8' ) )
// .attach( 'batch2', zlib.gzipSync( Buffer.from( JSON.stringify( objBatches[ 1 ] ) ), 'utf8' ) )
// .attach( 'batch3', zlib.gzipSync( Buffer.from( JSON.stringify( objBatches[ 2 ] ) ), 'utf8' ) )

Просмотреть файл

@ -41,7 +41,7 @@ describe( 'Password reset requests @passwordresets', ( ) => {
.post( '/auth/pwdreset/request' )
.expect( 400 )
// non-existant user
// non-existent user
await request( expressApp )
.post( '/auth/pwdreset/request' )
.send( { email: 'doesnot@exist.here' } )

Просмотреть файл

@ -42,7 +42,7 @@ async function contextApiTokenHelper( { req, res, connection } ) {
return { auth: true, userId, role, token, scopes }
} catch ( e ) {
// TODO: Think wether perhaps it's better to throw the error
// TODO: Think whether perhaps it's better to throw the error
return { auth: false, err: e }
}

Просмотреть файл

@ -19,8 +19,8 @@ export default class Coverter {
}
/**
* If the object is convertable (there is a direct conversion routine), it will invoke the callback with the conversion result.
* If the object is not convertable, it will recursively iterate through it (arrays & objects) and invoke the callback on any postive conversion result.
* If the object is convertible (there is a direct conversion routine), it will invoke the callback with the conversion result.
* If the object is not convertible, it will recursively iterate through it (arrays & objects) and invoke the callback on any positive conversion result.
* @param {[type]} obj [description]
* @param {Function} callback [description]
* @return {[type]} [description]
@ -236,7 +236,7 @@ export default class Coverter {
if ( !obj ) return
let { bufferGeometry } = await this.MeshToBufferGeometry( await this.resolveReference( obj.displayValue || obj.displayMesh ), scale )
// deletes known uneeded fields
// deletes known unneeded fields
// delete obj.displayMesh
// delete obj.displayValue
delete obj.Edges
@ -476,7 +476,7 @@ export default class Coverter {
const xAxis = this.PointToVector3( plane.xdir )
const yAxis = this.PointToVector3( plane.ydir )
// Make sure plane axis are unit lenght!!!!
// Make sure plane axis are unit length!!!!
xAxis.normalize()
yAxis.normalize()

Просмотреть файл

@ -185,7 +185,7 @@ var TransformControls = function ( camera, domElement, translationDotsOnly ) {
};
// Detatch from object
// Detach from object
this.detach = function () {
this.object = undefined;