-
Notifications
You must be signed in to change notification settings - Fork 162
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Optimize handling of attributes (#334)
* Optimize attribute values (#321) * Implemented faster attributes save * renamed for clarity * Renamed warning * Enable shortcut when saving child products. (#322) * Make sure to only return attributevalues that are on the actual product to avoid transferring (#331) attributesvalues from parent to child. * Improve multi db support (#335) Use the same database as the passed-in manager * The image and file fields where nolonger working. (#337) * The image and file fields where nolonger working. This PR restores that functionality. * nergens voor * fixes tests * black * Fixes cyclic import error * Fixes handling of null product image attributes When an image product attribute is `null`, the product API would throw the following exception: ``` ValueError: The 'value_image' attribute has no file associated with it. […] File "rest_framework/serializers.py", line 522, in to_representation ret[field.field_name] = field.to_representation(attribute) File "rest_framework/serializers.py", line 686, in to_representation return [ File "rest_framework/serializers.py", line 687, in <listcomp> self.child.to_representation(item) for item in iterable File "rest_framework/serializers.py", line 522, in to_representation ret[field.field_name] = field.to_representation(attribute) File "oscarapi/serializers/fields.py", line 227, in to_representation return value.value.url File "django/db/models/fields/files.py", line 66, in url self._require_file() File "django/db/models/fields/files.py", line 41, in _require_file raise ValueError( ``` This patch fixes this by checking if the image field has a value before trying to generate a URL. * Add category bulk admin api * Add tests to prove how it works * wops * Added Jenkinsfile * hehe * set to next release version * Setup local CI (#348) * Improve category upsert and add test (#352) * Doe some updating and add test * refrhes_from_db only path * Add transaction that rollsback on error * update versions --------- Co-authored-by: Craig Weber <[email protected]> Co-authored-by: Viggo de Vries <[email protected]>
- Loading branch information
1 parent
f24ef46
commit 965c782
Showing
16 changed files
with
1,323 additions
and
90 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
#!/usr/bin/env groovy | ||
|
||
pipeline { | ||
agent { label 'GEITENPETRA' } | ||
options { disableConcurrentBuilds() } | ||
|
||
stages { | ||
stage('Build') { | ||
steps { | ||
withPythonEnv('System-CPython-3.10') { | ||
withEnv(['PIP_INDEX_URL=https://pypi.uwkm.nl/voxyan/oscar/+simple/']) { | ||
pysh "make install" | ||
} | ||
} | ||
} | ||
} | ||
stage('Lint') { | ||
steps { | ||
withPythonEnv('System-CPython-3.10') { | ||
pysh "make lint" | ||
} | ||
} | ||
} | ||
stage('Test') { | ||
steps { | ||
withPythonEnv('System-CPython-3.10') { | ||
pysh "make coverage" | ||
} | ||
} | ||
post { | ||
always { | ||
junit allowEmptyResults: true, testResults: '**/nosetests.xml' | ||
} | ||
success { | ||
step([ | ||
$class: 'CoberturaPublisher', | ||
coberturaReportFile: '**/coverage.xml', | ||
]) | ||
} | ||
} | ||
} | ||
} | ||
post { | ||
always { | ||
echo 'This will always run' | ||
} | ||
success { | ||
echo 'This will run only if successful' | ||
withPythonEnv('System-CPython-3.10') { | ||
echo 'This will run only if successful' | ||
pysh "version --plugin=wheel -B${env.BUILD_NUMBER} --skip-build" | ||
sh "which git" | ||
sh "git push --tags" | ||
} | ||
} | ||
failure { | ||
emailext subject: "JENKINS-NOTIFICATION: ${currentBuild.currentResult}: Job '${env.JOB_NAME} #${env.BUILD_NUMBER}'", | ||
body: '${SCRIPT, template="groovy-text.template"}', | ||
recipientProviders: [culprits(), brokenBuildSuspects(), brokenTestsSuspects()] | ||
|
||
} | ||
unstable { | ||
echo 'This will run only if the run was marked as unstable' | ||
} | ||
changed { | ||
echo 'This will run only if the state of the Pipeline has changed' | ||
echo 'For example, if the Pipeline was previously failing but is now successful' | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.